将某些内容定义为
是否有任何区别const string msg=_T("serious");
const string& msg=_T("serious");
和
string const msg=_T("serious");
string const&msg=_T("serious");
谢谢
答案 0 :(得分:2)
无差异两者都相同。这是不同的说法。
答案 1 :(得分:0)
const string
和string const
之间没有区别。
const string msg
在本地范围内创建msg
个对象。这就是你应该做的。
const string& msg
创建一个用临时对象初始化的引用。这里,临时对象的生命周期延长,直到msg
超出范围,所以没关系,但在其他表达式中,它可能是错误或未定义的行为。如果删除const
,则定义将不再有效。你不应该使用它。
此处不需要_T()
,因为string
在Unicode版本中不会变成wstring。