将字符*转换为字符串
问题描述:
我想使用char *和#pragma消息来告诉我的问题在Visual Studio调试器中的位置。将字符*转换为字符串
void OutputShaderErrors(const char *filename)
{
std::string outputMessage = "Errors written to: ";
outputMessage += filename;
#pragma message(outputMessage.c_str())
}
上面的代码块的工作,但给出了以下警告:
Warning 1 warning C4083: expected 'string'; found identifier 'outputMessage'
答
由于#
在#pragma
建议,这是预处理器的功能。您不能在运行时调用。该代码实际上不起作用,并且您看到的警告来自您对#pragma
的无效使用。
由于您使用的是Visual Studio,因此您可能会发现OutputDebugMessage
函数很有用。
哇,所以这是不可能的?游民。 –
@btcode:由于您正在使用_Visual Studio_,因此您可能会发现'OutputDebugMessage'函数有用... –