- 博客(5)
- 收藏
- 关注
原创 Item5: Explicitly disallow the use of compiler-generated functions you do not want--若不想使用编译器自动生成的函数,就该明确拒绝
OK!!我们知道在声明一个类的时候,会同时生成Copy构造函数和copy assign 操作符函数。可是有时候类的对象是独一无二的,我们不希望有它的副本,当然就不希望它的拷贝成功了。 这个时候该怎么办呢??private可提供了一个好的方法。如下: class Student{:private: Student(const Student&); S
2009-03-15 00:27:00
370
原创 Item4:Use const whenever possible--尽可能使用const
先说下const,它来自于英文constant,意为始终不一,忠实,不变的。在程序中用作修饰语。大体的意思也就是固定不变,但一定要分清楚不同场合中具体的用法。 const 可用来修饰global或namespace作用域中的常量,或修饰文件、函数、区块作用域被声明为static的对象。 此时被const修饰的常量或对象是不可被修改的,修改将发生编译错误。 最让人头痛的是当const
2009-03-14 22:51:00
594
原创 Item3:Use objects to manage resources--以对象管理资源
问题起因:看下面一个例子:假设一个程序库,其中包括root class Investment,其它各式各样的具体投资类型继承自该类。class Investment { };class ConcreteInvestment1 : public Investment{ };class ConcreteInvestment2 : public Investment{ };..
2009-03-04 21:11:00
381
原创 Item2:Know what functions C++ silently writes and calls--了解C++默默编写并调用了哪些函数
假设你重新定义String类如下:class String{ };这就如同你写下了这样的代码:class String{ String() {....} //default构造函数 String(const String& rhs) {....} //copy构造函数 ~String() {....} // 析构函
2009-02-25 19:50:00
428
原创 Item1:Declare data members private--将所有成员变量声明为private
Item1:Declare data members private在类设计时将所有成员变量声明为private。原因如下:1、语法一致性。当成员变量是private的时候、客户唯一能访问对象的方法就是通过成员函数、省下了许多搔首弄耳的时间。2、更精确的控制对成员变量的处理、如果成员变量是public的话、每个人都可以读写它。但是如果以成员函数的方式读取或者设定成员变量
2009-02-24 20:19:00
507
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人