我有一个定义类的.h文件。该类有一个成员,它是一个嵌套在嵌套在地图等中的地图的地图。
std::map<ItemWieldMode,
std::map<AgentType::HandState,
std::map<AgentType::MovementState,
std::map<AgentType::BodyState,
std::map<Vec2<int>, sp<AnimationEntry>>>>>> standart_animations;
这是有问题的文件https://github.com/Istrebitel/OpenApoc/blob/master/game/state/battle/battleunitanimationpack.h
当然,C4503警告弹出,名字太长而被截断。
我试图压制它。无论我放在哪里&#34; #pragma warning(禁用:4503)&#34;它没有用。我尝试在.h文件的开头,在.cpp文件的开头使用这个类 - 没有任何作用。编译器仍然会发出警告。
我正在使用VS 2015社区。 p>
答案 0 :(得分:0)
如果您在#pragma warning(disable : 4503)
push
之后放置C4503 warnings
,则会收到警告。如果您将置于之前,则无警告。这意味着上面的代码会生成disabled
,即使它是#pragma warning (disable:4503)
#pragma warning (push, 1)
.
.
.
.
#pragma warning (pop)
。
例如,
{{1}}
参考链接:https://msdn.microsoft.com/en-us/library/2c8f766e(v=vs.100).aspx
答案 1 :(得分:0)
对于其他可能需要它的人,因为我确定你现在已经弄清楚了:
#pragma行只是在你试图压制警告的行前面。