我是 C++ 编程的新手。编译时我从不使用任何选项。
这是我的日常命令:
g++ MyCode.cc -o MyCode
对于安全实践,最好的选择是什么?
我是 C++ 编程的新手。编译时我从不使用任何选项。
这是我的日常命令:
g++ MyCode.cc -o MyCode
对于安全实践,最好的选择是什么?
g++ -W -Wall -Werror
将显示所有可能的错误和警告并将它们视为错误。
“-Werror”:将所有警告视为错误,因此您必须修复它们。无比珍贵。
g++ -g
我真的需要那个调试信息....
如果你认为你抓住了一切,试试-Wextra
g++ -Wall -Weffc++ -Werror -pedantic
但是,当我使用 Boost 时,我将其归为:
g++ -Wall -Werror
不过,我正在焦急地等待 GCC 4.4 和 4.5。有一些我非常需要的功能即将推出。
-ansi -pedantic -D__STDC_FORMAT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -D_GNU_SOURCE -D_REENTRANT -Wall -Wextra -Wwrite-strings -Winit-self -Wcast-align -Wcast-qual -Wold-style-cast -Wpointer-arith -Wstrict-aliasing -Wformat=2 -Wuninitialized -Wmissing-declarations -Woverloaded-virtual -Wnon-virtual-dtor -Wctor-dtor-privacy -Wno-long-long -O3 -ftree-vectorize -ftree-vectorizer-verbose=2 -ffast-math -fstrict-aliasing -march=native/pentium4/nocona/core2 -msse2 -mfpmath=sse
We always use
g++ -Wall -Wextra ...
实际上,它是一个集合:-Wall -pedantic -std=c++98
-pipe,它加快了编译速度。还有-O2,它可以加快执行速度。
I like -march=athlon -O2 -pipe
for building most programs (I run Gentoo at home), and I use -ansi -pedantic -Wall
for code I write myself.