C++ 学习第3天 一些给自己的忠告

来源:互联网 发布:车牌识别算法 matlab 编辑:程序博客网 时间:2024/05/22 04:24
一个人对C了解得越好,在写C++程序时大概就越避免C的风格,并会因此丢掉C++的某些潜在优势。在C++里存在比C更好的方式:
[1]在C++里几乎不需要用宏。用const或enum定义明显的常量,用inline避免函数调用的额外开销,用template去刻画一族函数或者类型,用namespace去避免名字冲突。
[2]不要在你需要变量之前支声明它,以保证你能立即对它进行初始化。声明可以出现在能出现语句的所有位置上,可以出现在for语句的初始化部分,也可以出现在条件中。
[3]不要用malloc()。new运算符能将同样的事情做的更好。对于realloc(),请试一试vector()。
[4]试着去避免void*、指针算术、联合和强制,除了在某些函数或类实现的深层之外。在大部分情况下,强制都 是设计错误的指示器。如果你必须使用某个的类型转换,请设法支用一个“新的强制”,设法写出一个描述你想要做的事情的更精确的语句。
[5]尽量少用数组和C风格的字符串。与传统的C风格相比,使用C++标准库string和vector常常可以简化程序设计。
如果要符合C的连接规则,一个C++函数就必须被声明为具有C连接的。

最重要的是,请试着将程序考虑为一组由类和对象表示的相互作用的概念,而不是一堆数据结构和一些去拨弄数据结构中二进制位的函数。



到今天,许多人使用C++已经十几年了。大部分人是在某个单一的环境里使用C++,并已学会了在早期编译器和第一代的库所强加的束缚之下生存。经常可以看到这种情况,一个很有经验的C++程序员不仅很多年没有注意引进的新特征,也没有看到有关特征之间关系的变化,而这些情况已经使一些全新的程序设计技术变成可行的东西了。换句话说,你在第一次学习C++时没有想到或者认为不实际的东西,或许今天已经变成一种高明的方式。你只有通过重新考察基础的东西才能弄清楚它们。

1.避免使用指针
2.提倡使用程序库
3.使用类来表示概念


来自于the C++ Programming Language

原创粉丝点击