在没有null构造函数的情况下声明未初始化的变量

时间:2010-04-26 05:23:49

标签: c++

考虑DUPoint类,其声明如下所示。假设此代码出现在名为DUPoint.h的文件中:

#include <string>  
class DUPoint {  
public:  

  DUPoint (int x, int y);  

  int getX () const;  
  int getY () const;  

  void setX (int x);  
  void setY (int y);  

  void print();  

private:  
  int x_;  
  int y_;  
};

使用此类作为当前配置的类,因为它没有空构造函数而无法使用诸如DUPoint之类的语句声明未初始化的DUPoint P;变量吗?

2 个答案:

答案 0 :(得分:6)

是的,如果有用户声明的构造函数,编译器将不会隐式生成默认构造函数。

答案 1 :(得分:1)

如果提供构造函数,则不会生成默认构造函数。当然,添加一个只是

的问题
DUPoint();
相关问题