f*****y 发帖数: 444 | 1 #include
using namespace std;
template class complex {
public:
complex(T re, T im) { re = re, im=im ;};
void print(){cout<
private:
T re,im;
};
int main()
{
complex(2,3).print();
complex c = complex(3,4);
c.print();
} |
Z**********4 发帖数: 528 | 2 -858993460+-858993460i
-858993460+-858993460i
我运行就是这个结果
谁来解释下为什么? |
t****t 发帖数: 387 | 3 因为这一句
complex(T re, T im) { re = re, im=im ;};
应该用this->re = re, this->im = im;
不然就是undefined value |
f*****y 发帖数: 444 | 4 complex(T re, T im) { re = re, im=im ;};
成员变量被参数屏蔽了。改成下面的就行了。
complex(T r, T i) { re = r, im=i ;}; |
r*******y 发帖数: 1081 | 5 hiding
【在 Z**********4 的大作中提到】 : -858993460+-858993460i : -858993460+-858993460i : 我运行就是这个结果 : 谁来解释下为什么?
|
c***r 发帖数: 1570 | 6 template class complex {
public:
complex(T re, T im) { _re = re, _im=im ;};
void print(){cout<<_re<<'+'<<_im<<'i'<
private:
T _re,_im;
}; |
f*****y 发帖数: 444 | 7 #include
using namespace std;
template class complex {
public:
complex(T re, T im) { re = re, im=im ;};
void print(){cout<
private:
T re,im;
};
int main()
{
complex(2,3).print();
complex c = complex(3,4);
c.print();
} |
Z**********4 发帖数: 528 | 8 -858993460+-858993460i
-858993460+-858993460i
我运行就是这个结果
谁来解释下为什么? |
t****t 发帖数: 387 | 9 因为这一句
complex(T re, T im) { re = re, im=im ;};
应该用this->re = re, this->im = im;
不然就是undefined value |
f*****y 发帖数: 444 | 10 complex(T re, T im) { re = re, im=im ;};
成员变量被参数屏蔽了。改成下面的就行了。
complex(T r, T i) { re = r, im=i ;}; |
|
|
r*******y 发帖数: 1081 | 11 hiding
【在 Z**********4 的大作中提到】 : -858993460+-858993460i : -858993460+-858993460i : 我运行就是这个结果 : 谁来解释下为什么?
|
c***r 发帖数: 1570 | 12 template class complex {
public:
complex(T re, T im) { _re = re, _im=im ;};
void print(){cout<<_re<<'+'<<_im<<'i'<
private:
T _re,_im;
}; |
l*********y 发帖数: 370 | |
r**********1 发帖数: 292 | 14 那如果改正后,结果是5和7?
cout<
里面的i是干嘛的啊? |
b**k 发帖数: 3563 | 15 结果应该是
2+3i
3+4i
这是复数。i是虚数单位。 |
r****t 发帖数: 10904 | 16 c++ 陷阱很多啊。其他语言强制写这个就不会有这问题了。
【在 t****t 的大作中提到】 : 因为这一句 : complex(T re, T im) { re = re, im=im ;}; : 应该用this->re = re, this->im = im; : 不然就是undefined value
|
z*y 发帖数: 1311 | 17 this is valy bad coding |