在C ++中,如果函数的参数是用户定义的对象,我们可以通过调用对象的构造函数给它一个默认值吗?
答案 0 :(得分:0)
当然,按照我应该尝试的方式......
例如:
/* Your user-define object */
class A {
public:
A( const int& x = 4) : x_(x) {}
operator int() {return x_;}
private:
int x_;
}
class B {
public:
B( const int& y = A(3)) : y_(y) {}
/* OR */
B( A* a = new A(4)) : a_(a) {}
private:
int y_;
A* a_;
}