我有以下课程
class abc
{
private:
string name_;
public:
explicit abc(string name);
};
class xyz
{
private:
abc obj_abc_;
public:
xyz ():obj_abc_("NOTHING") { }; //I think this should give an error since explicit is used.
};
根据我对显式的理解,每当调用 xyz 构造函数时,我都应该得到一个编译器错误;因为我通过简单地将obj_abc分配给一个字符串来初始化它。但我在这里没有得到任何编译器错误。我错过了什么?