C++新手问题:编译时提示:[Linker error] undefined reference to `operator*(double,complex c我想写一个复数乘实数的函数(其中的复数是一个叫complex的class):class complex{private:double m_r; //实部double m_i; //虚
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/05 20:56:00
![C++新手问题:编译时提示:[Linker error] undefined reference to `operator*(double,complex c我想写一个复数乘实数的函数(其中的复数是一个叫complex的class):class complex{private:double m_r; //实部double m_i; //虚](/uploads/image/z/10351268-44-8.jpg?t=C%2B%2B%E6%96%B0%E6%89%8B%E9%97%AE%E9%A2%98%EF%BC%9A%E7%BC%96%E8%AF%91%E6%97%B6%E6%8F%90%E7%A4%BA%EF%BC%9A%5BLinker+error%5D+undefined+reference+to+%60operator%2A%28double%2Ccomplex+c%E6%88%91%E6%83%B3%E5%86%99%E4%B8%80%E4%B8%AA%E5%A4%8D%E6%95%B0%E4%B9%98%E5%AE%9E%E6%95%B0%E7%9A%84%E5%87%BD%E6%95%B0%EF%BC%88%E5%85%B6%E4%B8%AD%E7%9A%84%E5%A4%8D%E6%95%B0%E6%98%AF%E4%B8%80%E4%B8%AA%E5%8F%ABcomplex%E7%9A%84class%EF%BC%89%EF%BC%9Aclass+complex%7Bprivate%3Adouble+m_r%3B+%2F%2F%E5%AE%9E%E9%83%A8double+m_i%3B+%2F%2F%E8%99%9A)
C++新手问题:编译时提示:[Linker error] undefined reference to `operator*(double,complex c我想写一个复数乘实数的函数(其中的复数是一个叫complex的class):class complex{private:double m_r; //实部double m_i; //虚
C++新手问题:编译时提示:[Linker error] undefined reference to `operator*(double,complex c
我想写一个复数乘实数的函数(其中的复数是一个叫complex的class):
class complex
{
private:
double m_r; //实部
double m_i; //虚部
public:
complex operator*( double x) ;
friend complex operator*( double x,complex& st);
……剩下的省略
}
definition:
complex complex::operator*(double x)
{
complex result;
result.m_r=m_r*x;
result.m_i=m_i*x;
return result;
}
complex operator*(double x,complex& st)
{
return st*x;
}
但是编译时提示C++新手问题:下面的程序编译时提示 [Linker error] undefined reference to `operator*(double,complex c,如果我把两个函数的参数都改成const的,就可以顺利编译:
complex operator*(const double x) const ;
friend complex operator*(const double x,const complex& st);
C++新手问题:编译时提示:[Linker error] undefined reference to `operator*(double,complex c我想写一个复数乘实数的函数(其中的复数是一个叫complex的class):class complex{private:double m_r; //实部double m_i; //虚
你在调用*操作符的时候,参数可能是一个const类型的!而在你的定义中,参数是非const类型,编译器不确定你会不会修改参数的值,所以不会为你的const类型调用非const版本!
我想应该是这样的,不知道能不能帮到你