Myvector vf(5, Fraction(1,2));当执行到此代码时,应该调用Myvector的模板来生成Fraction类型的模板但他却调用了Fraction的构造函数,然后就无穷递归了,这是怎么回事,求解决方案
template class Myvector {
T arry[1000];
int realsize;
public:
Myvector(int ,T );
Myvector();
T & operator=( T & );
};
template Myvector::Myvector(int a, T b)
{
realsize = a;
for (int i = 0; i < a; i++)arry[i] = b;
}
class Fraction {
private:
int fenzi;
int fenmu;
public:
Fraction(int, int);
Fraction();
Fraction &operator=(const Fraction&);
};
Fraction::Fraction() { fenzi = 0; fenmu = 1; }
Fraction::Fraction(int a, int b)
{
fenzi = a;
fenmu = b;
}