Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/162.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用有效的C++; 我将旧C++代码移植到一个有效的C++安全版本。我读到关于这面旗帜的问题,但我没有选择做还是不做,这是必须的。在使用模板时,我遇到了一个重载equals运算符的问题_C++_Templates_Operator Overloading_Weffc++ - Fatal编程技术网

使用有效的C++; 我将旧C++代码移植到一个有效的C++安全版本。我读到关于这面旗帜的问题,但我没有选择做还是不做,这是必须的。在使用模板时,我遇到了一个重载equals运算符的问题

使用有效的C++; 我将旧C++代码移植到一个有效的C++安全版本。我读到关于这面旗帜的问题,但我没有选择做还是不做,这是必须的。在使用模板时,我遇到了一个重载equals运算符的问题,c++,templates,operator-overloading,weffc++,C++,Templates,Operator Overloading,Weffc++,我试图将功能从头文件移动到实际的cpp,但没有任何效果。删除模板是可行的,但由于需要模板,它只是告诉我问题出在哪里 模板 MyClass&operator=(常量boost::tuple&\u v) { //一些操作 归还*这个; } 编译此代码会引发以下错误: 'operator=' should return a reference to *this 指向准确的一行返回*this MyClass不继承任何其他类。这是一个effc++错误还是我遗漏了什么?请您浏览一下“//一些操作”好吗?

我试图将功能从头文件移动到实际的cpp,但没有任何效果。删除模板是可行的,但由于需要模板,它只是告诉我问题出在哪里

模板
MyClass&operator=(常量boost::tuple&\u v)
{
//一些操作
归还*这个;
}
编译此代码会引发以下错误:

'operator=' should return a reference to *this
指向准确的一行
返回*this


MyClass不继承任何其他类。这是一个effc++错误还是我遗漏了什么?

请您浏览一下“//一些操作”好吗?。顺便说一句,这是赋值运算符,而不是“等于运算符”,对我来说绝对是个bug。让我们在a的帮助下确认这一点。尝试从错误选项中消除错误警告是一个愚蠢的策略。
MyClass
操作符=()
必须是
MyClass
的非静态成员。您不能在
MyClass
的类定义之外声明这样的东西。如果您不遵守该规则,编译器往往会给出隐藏的错误消息-因为
不存在于非静态成员之外,所以它可能会对此进行投诉。然后您需要提供一个-一个小的代码示例,其他人可以将其提供给编译器并复制您的症状。你提供的信息不足以让任何人帮助你。