我最近安装了 Ubuntu 11.10 以及 CodeBlocks IDE,我知道我默认有 gcc 和 std 库。
我的问题是:
- 您对 Ubuntu 上的新 C++ 程序员有什么建议吗?
- 我应该从一开始就获得任何库?
- 我缺少一个非常好的 IDE? (YMMV,但我更喜欢在 IDE 中工作)
- 我应该从一开始就意识到任何编程的好处或陷阱?
最佳答案
在 Ubuntu 上使用 C 或 C++ 编写代码不需要 IDE。您可以使用一个好的编辑器(如 emacs
,您可以对其进行配置以满足您的需要。)。
给新手的一些提示:
- 始终使用
-Wall -Wextra
进行编译,甚至可能使用-Werror -pedantic-errors
编译器的参数顺序(
gcc
或g++
)非常重要;我推荐:- 一般警告和优化标志(例如,
-Wall
、-g
获取调试信息、-O
、-flto
等,或-c
以避免链接,...) - 预处理器选项,例如
-I
include-dir 和-D
defined-symbol(或-H
了解包含哪些 header )等。 - 要编译的源文件[s],如
hello.c
或world.cc
- 如果要链接现有的目标文件
else.o
,请将它们添加到源文件之后 - 链接器选项(如果相关),尤其是
-L
library-dir(如果您的程序使用带有 dlopen(3) 的插件,则可能还有-rdynamic
。 ...) - 库(如
-lfoo -lbar
从高级库(如libfoo.so
)到低级库。 - 输出文件(即生成的可执行文件),例如
-o yourexec
.
- 一般警告和优化标志(例如,
始终纠正您的源代码,直到完全没有警告为止。相信编译器的警告和错误消息。
了解如何使用
make
并编写简单的Makefile
-s;见 this example 。还有其他 build 者,例如http://omake.metaprl.org/等
- 使用
-g
标志编译您的代码,让编译器生成调试信息;仅在您调试程序后,要求编译器进行优化(例如,使用-O1
或-O2
),尤其是在基准测试之前。 - 了解如何使用
gdb
- 使用
svn
或git
之类的版本控制系统(即使是家庭作业)。在 2015 年,我推荐 git 而不是svn
- 备份您的工作。
- 学习使用 valgrind 寻找内存泄漏。
注意
上述建议并非特定于 Ubuntu 11.10,它们可能适用于其他 Linux 发行版和其他 Ubuntu 版本。
关于c++ - Ubuntu 11.10 上的 C 和 C++ 编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7937602/