在 C++ 中禁用警告

Bet*_*ish 4 c++ qt warnings

我是c++新手。我正在 Qt 上编译代码源。我有这个警告:

在 ../ListAllPrsilicaCameras/main.cpp:3 包含的文件中: 在 /usr/include/c++/4.2.1/backward/iostream.h:31 包含的文件中:/usr/include/c++/4.2.1/backward /backward_warning.h:32:2:警告:此文件至少包含一个已弃用或过时的标头。请考虑使用 C++ 标准第 17.4.1.2 节中的 32 个标头之一。示例包括将标头替换为 C++ include 的标头,或者替换已弃用的标头。要禁用此警告,请使用 -Wno-deprecated。[-W#警告]

#warning 此文件至少包含一个已弃用或过时的标头。

^ 生成了 1 个警告


我还收到这些警告:

../ListCamerasProsilicaII/main.cpp:79:51: warning: unused parameter 'junk' [-Wunused-parameter]
void SetConsoleCtrlHandler(void (*func)(int), int junk)
                                                  ^
../ListCamerasProsilicaII/main.cpp:89:23: warning: unused parameter 'Signo' [-Wunused-parameter]
void CtrlCHandler(int Signo)
                      ^
../ListCamerasProsilicaII/main.cpp:140:57: warning: flag ' ' results in undefined behavior with 'u' conversion specifier [-Wformat]
                        printf("%s - %8s - Unique ID = % 8lu IP@ = %15s [%s]\n",cameraList[i].SerialString,
                                                       ~^~~~
../ListCamerasProsilicaII/main.cpp:147:57: warning: flag ' ' results in undefined behavior with 'u' conversion specifier [-Wformat]
clang++ -headerpad_max_install_names -mmacosx-version-min=10.6 -o ListCamerasProsilicaII main.o   -L/opt/local/lib/ -lPvAPI -lPvJNI -L/opt/local/lib -lJPEG -F/Users/rafikgouiaa/Qt//5.0.2/clang_64/lib -framework QtCore 
                        printf("%s - %8s - Unique ID = % 8lu (unavailable, %u)\n",cameraList[i].SerialString,
                                                       ~^~~~
../ListCamerasProsilicaII/main.cpp:152:53: warning: flag ' ' results in undefined behavior with 'u' conversion specifier [-Wformat]
                    printf("%s - %8s - Unique ID = % 8lu (*)\n",cameraList[i].SerialString,
                                                   ~^~~~
../ListCamerasProsilicaII/main.cpp:171:14: warning: unused parameter 'argc' [-Wunused-parameter]
int main(int argc, char* argv[])
             ^
../ListCamerasProsilicaII/main.cpp:171:26: warning: unused parameter 'argv' [-Wunused-parameter]
int main(int argc, char* argv[])
                         ^
7 warnings generated.
Run Code Online (Sandbox Code Playgroud)

我怎样才能禁用这个警告?

ale*_*ibs 6

重复之前的答案“答案就在警告消息本身中。”

"To disable this warning use -Wno-deprecated."
Run Code Online (Sandbox Code Playgroud)

您可以在 Qt 项目文件 (.pro) 中添加以下行来指定编译器标志:

QMAKE_CXXFLAGS += -Wno-deprecated
Run Code Online (Sandbox Code Playgroud)

PS 修复代码本身会更好