C++ 错误:没有匹配所有 to 的函数
c++ error: no matching function for all to
我正在尝试实现一个使用其构造函数返回类对象的函数。该类对象仅作为带有参数的构造函数,并且没有任何默认构造函数(因为我不需要它)。当我尝试返回该类对象时 - 出现该错误。
基地.cpp
派生基::运算符+ (){ 返回派生(*this);没有用于调用"派生::D派生(派生)"的匹配函数}
基数.h
虚拟派生运算符+ ();
派生.h构造 函数:
派生(基数&b);
派生(派生&d);
1. 我该怎么做才能修复该错误?
2. 声明(常量派生&)和(派生&)之间有什么区别?
谢谢
Derived&
不会绑定到临时对象。您的operator+
返回临时的。
解决方案:添加const
const&
将绑定到临时。
相关文章:
- "error: no matching function for call to"构造函数错误
- 当覆盖存在时调用基本虚拟"binded to object"函数
- 声明和定义函数静态会产生"undefined reference to function_name()"
- 如果子类中没有构造函数方法,则错误"no matching function for call to 'LGame::LGame(String&)'"
- std::bind to a std::variant 包含多个 std::函数类型
- 如何修复 cpp 中的"undefined reference to"错误,当调用刚性车身树中的函数时,如 doKinematics、CreateKinematicCache
- 虚拟函数在哪里使用 vpointer to vtable 来解析方法调用,非虚拟方法存储在哪里以及如何解析它们?
- 调用 to(列表和push_front)没有匹配函数
- MSVC:带函数的"error C2244: unable to match function definition to an existing declaration"是指专用模板类的类型别名
- 如果它被定义为 C++ 类中的成员函数,我得到了"non-standard syntax; use '&' to create a pointer to member"
- 将单独的头文件和类定义文件链接到主函数文件 - G++ 返回重载"undefined reference to"构造函数
- C++'Undefined reference to'错误,尽管包含路径中的头文件中存在函数定义
- 尝试分配函数指针时获取"Void value not ignored as it ought to be"
- 调用布尔函数但收到错误"no matching function to call"?
- 为什么我"no matching function for call to .."可变参数模板函数?
- "attempting to reference a deleted function"函数参数
- 为什么我的复制构造函数出现"undefined reference to"错误?
- 传递variadic arg to模板函数时的汇编误差
- "print 1 to n"函数打印 1 两次
- "Undefined reference to"函数错误