>我有一个函数,它使用 CStringW 从 .rc 文件中检索资源。我想在sprintf_s中使用此返回值。有什么办法吗?
//片段
sprintf_s(szMsgBoxText, LoadFromResource(IDS_INSTALLATION_COMPLETE), g_szProductName);
CStringW LoadFromResource(int ID)
{
CStringW m_resoucestring(MAKEINTRESOURCE(ID));
return m_resoucestring;
}
sprintf_s给我一个错误。这有什么选择吗?
使用与
sprintf_s
完全相同的CStringW::Format
。因此,您的代码将变为:
CStringW sText;
sText.Format(LoadFromResource(IDS_INSTALLATION_COMPLETE), g_szProductName);
甚至
CStringW sText;
sText.Format(IDS_INSTALLATION_COMPLETE, g_szProductName);
您可以将CStringW
直接传递给接受LPCWSTR
类型参数的任何函数,因为它具有相应的强制转换运算符。