gpt4 book ai didi

c++ - 如何抑制编译器警告 C4373

转载 作者:搜寻专家 更新时间:2023-10-31 01:47:44 26 4
gpt4 key购买 nike

我遇到了警告 4373 的问题,特别是。我希望禁用此特定警告。但是,警告 #pragma 无效。首先,我尝试在有问题的代码周围使用禁用,然后进行抑制,但都没有任何效果。我还尝试在派生方法和基本方法周围使用禁用,但也没有效果。我怎样才能特别抑制这个警告?

编辑:有什么方法可以针对某些特定功能而不是全局禁用此警告?

最佳答案

您可以使用 #pragma 在本地抑制警告.

#pragma warning( push )
#pragma warning( disable : 4373 )
// Some code
#pragma warning( pop )

因此,例如,从 MSDN's C4373 demonstration program 开始, 这是一个抑制警告的修改版本:

#include <stdio.h>
struct Base
{
virtual void f(int i) {
printf("base\n");
}
};

#pragma warning( push )
#pragma warning( disable : 4373 )
struct Derived : Base
{
void f(const int i) { // C4373
printf("derived\n");
}
};
#pragma warning ( pop )

void main()
{
Derived d;
Base* p = &d;
p->f(1);
}

关于c++ - 如何抑制编译器警告 C4373,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18843534/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com