class crect
{
CPoint startpt;
CPoint endpt;
int lnwidth;
crect(CPoint from, CPoint to, int wd) //constructor
{
startpt = from;
endpt = to;
lnwidth = wd;
}
};
class shape
{
crect *rect = new crect(from, to, wd); // wd showing error at this line
};
在形状程序中使用上述构造函数,然后在wd处显示错误...
答案 0 :(得分:0)
答案 1 :(得分:0)
如果您未指定访问说明符,则默认情况下,类的成员将变为private
,因此对我来说,似乎两个构造函数都是private
。
答案 2 :(得分:0)
两件事 首先确保所有变量都存在(从to和wd)
第二个构造函数是私有的,因此您不能在class之外创建类对象。试想一下,就好像您有一个私有的int一样;在您的类中,并且您尝试使用obj.a之类的对象访问a; 您在此处执行的操作类似于单例设计模式。在您将构造函数设为私有的情况下,除了class的getInstance()方法之外,没有人可以创建对象。
因此,如果我的猜测正确,则将构造函数声明为公共应该可以为您解决问题。