如何初始化对象
how can i initialize an object
重点是初始化一个指向 Mystic 对象的指针,值为"哔哔"有什么想法吗?
class Mystic {
private:
string label;
Mystic(string & newlbl) { setLabel (newlbl)};
public:
void setLabel(string newlbl){label = newlbl;}
Mystic() : label(){};
};
int main(int argc, char *argv[])
{
... //i tried this
//string *p1 = new string("beep");
//Mystic myst(p1);
}
接受字符串的构造函数不是公共的,因此不能使用它。 请改用默认构造函数,然后使用 setLabel 方法。
int main(int argc, char** argv) {
Mystic m;
m.setLabel("beep");
Mystic* p = &m;
}
你
尝试使用的构造函数是一个私有的,并且你只能访问公共的,所以你必须使该构造函数成为公共的,或者如果你想使用公共默认构造函数并初始化默认值Mystic() : label("default"){}
相关文章:
- 用C++中的CPerson(类)类型的对象初始化STL矢量
- 对象初始化中是否允许指向此成员的指针?
- 对象初始化后在C++中显示 char 数组时的异常行为
- 为什么两种不同的对象初始化方式给出不同的输出
- (2 问题)"类"类型重新定义(即使 #pragma 一次),以及静态函数内的静态成员对象初始化?
- afxmem.cpp中的对象初始化差异
- 删除通过取消引用新对象初始化的对象
- 如何使用sregex_token_iterator对象初始化向量
- 关于默认构造函数,对象初始化/使用C++ OOP
- C++ 基元类型初始化与对象初始化
- 哪个函数负责C++全局范围内的类对象初始化?
- C++中构造函数的对象初始化出现问题
- 如何修复模板 BST 类的对象初始化
- 无法在 QML/C++ 中使用绑定对象初始化 UI
- 为什么参数可以在对象初始化时通过赋值运算符传递给构造函数?
- 类对象初始化的二维向量
- GCC:当层次结构中存在虚拟继承时,C++11 内联对象初始化(使用 "this")不起作用
- 对象初始化
- 类对象初始化
- 使用从另一个类继承的类的对象初始化成员对象