Jor*_*hez 3 c++ operator-overloading
我的头快要爆炸了.我无法理解我在尝试用两个类(punto和vector)重载'<<'运算符时做错了.这是代码,代码是在类头文件中写出的:
std::ostream& operator << (ostream& salida, const punto& origen)
{
// Se escriben los campos separados por el signo
salida << "Punto --> x: " << origen.xf << " , y: " << origen.yf;
return salida;
}
std::ostream& operator << (ostream& salida, const vector& origen)
{
// Se escriben los campos separados por el signo
salida << "Punto --> x: " << origen.p1.xf << " , y: " << origen.p1.yf;
return salida;
}
Run Code Online (Sandbox Code Playgroud)
错误发生在链接步骤中,并且没有与类标题的双重链接,因为它是一个非常简单的示例.

此特定错误意味着函数被编译为两个不同的转换单元.如果将函数定义放在标题中并将其包含在两个不同的源文件中,则很可能会发生这种情况.
从广义上讲,你有两个解决方案:
| 归档时间: |
|
| 查看次数: |
1476 次 |
| 最近记录: |