o**********a 发帖数: 330 | 1 class A {
public:
A(const int, const vector&);
A(const A&);
virtual A& operator=(const A&);
//...
protected:
int i;
vector s;
};
A::A(const int a,const vector& b):i(a),s(b){}
//我这么写没有定义defualt constructor,请问如何定义这个constructor
//另外,一般写类的时候,是不是最好都定义default contructor | X****r 发帖数: 3557 | 2 这个别人怎么知道你想要它default behavior是什么。
并不是一定要有default constructor的。
【在 o**********a 的大作中提到】 : class A { : public: : A(const int, const vector&); : A(const A&); : virtual A& operator=(const A&); : //... : protected: : int i; : vector s; : };
| k******r 发帖数: 2300 | 3 default constructor 并不是绝对需要,但一般都要。判断一个类是否需要default
constructor 就是你定义类的实例到底能不能有一个default value。 一般是最好有一
个default constructor, 但是如果你发现你定义类的实例不可能在compile time 确
定一个default value, 就不定义default constructor。
【在 o**********a 的大作中提到】 : class A { : public: : A(const int, const vector&); : A(const A&); : virtual A& operator=(const A&); : //... : protected: : int i; : vector s; : };
|
|