1

可能重复:
如何解决有关字符文字的 C4428 Visual C++ 警告的这个实例?

如果我编译代码:

wchar_t c = L'\u00A0';

使用 /W4 标志,我收到警告:

警告 C4428:在源代码中遇到通用字符名称

我不明白的是,这个警告的目的是什么?它试图防止什么错误?

4

1 回答 1

1

这与错误无关。

据我了解,警告只是告诉您您使用了字符代码而不是实际字符。对于大多数字符来说,这只是为了让事情更具可读性,尽管在您的情况下,字符看起来与普通空间相同,因此使用代码实际上是一个好主意(甚至更好,我喜欢使用宏或枚举unicode 名称,所以它是 NO_BREAK_SPACE)。

无论哪种方式,人们都可以无休止地争论该警告是否真的对任何事情有用。或者你可以禁用那个特定的(可能还有更多你已经禁用的警告,比如关于未使用的内联等的警告)然后继续。

于 2012-07-21T10:28:22.060 回答