我知道没有关于如何使用或声明字符串文字的具体规则,例如在我的类中,我想使用“MyName”字符串文字,并且它是唯一将使用它的类,例如,
// CFoo.h
class CFoo
{
public:
CFoo();
~CFoo();
void printString();
}
// CFoo.cpp
CFoo::CFoo()
{
}
CFoo::~CFoo()
{
}
void CFoo::printString()
{
std::cout << "MyName" << std::endl;
}
现在我希望“MyName”将有一个描述性名称占位符,如NameLiter或类似的东西。我应该使用define预处理器,还是在cpp中将它声明为const std :: string?或者我应该创建一个私有成员变量并在ctor初始化列表中初始化它?
谢谢!
答案 0 :(得分:1)
在CFoo中成为private static const char*
将满足您的要求。