在代码注释中接受字符串结果

Accept string results in code commenting

本文关键字:字符串 结果 代码 注释      更新时间:2023-10-16

我有MSDN页面的这个片段

lplpszAcceptTypes - 指向以 null 结尾的字符串数组的指针,该数组指示客户端接受的媒体类型。下面是一个示例。

PCTSTR rgpszAcceptTypes[] = {_T(“text/*”), NULL};

这里的问题/*“text/*”被智能感知读取为注释,并且此行后面的代码被注释掉。这里的解决方案是什么?

IntelliSense 将其解析为注释的唯一原因是它不是一个正确的字符串文本。C++字符串文字由简单的直引号"分隔,但 MSDN 示例(可能是由于在不适合技术内容的文字处理器中编辑)使用 的风格化引号。这些不被识别为引号,因此字符串文本也不会被识别,这会导致 IntelliSense 误入歧途。(如果MS尊重可移植性,它也应该使编译器误入歧途。

请考虑以下情况:

PCTSTR rgpszAcceptTypes[] = {_T(“text/” “*”), NULL};

预编译阶段将以透明方式连接字符串,并且智能感知不会混淆。

或者,您可以使用宏定义(我:)道歉):

#define SPLIT_PATH "/"
PCTSTR rgpszAcceptTypes[] = {_T(“text” SPLIT_PATH “*”), NULL};

。或转义字符串(如注释中@DoomProg建议的那样)。