c++ 编写经验,欢迎指正
1。关于const .放在修饰的主语的后面。
int const
int * const
int * & const;
int * & [] const; //数组不能修饰
int * & () const; //常函数只能出现在类中,被常对象调用
2。参数传递,值传递,引用传递,多用引用少用值
a。基本类型用值,包括指针
b。类类型用引用,注意,const &比 &有更广的适用性。const &可以传递常量,临时对象,还可以接受中途的类型转换。
c。引用本身是通过指针技术来实现的,指针的注意事项,同时作用于引用。
3。数组只能通过引用传递,否则,第一维降级为指针。
int (&)[1][2]
int *[2]
4.对象分为堆对象,栈对象, 堆对象使用new创建,栈对象的活动范围在创建其范围内。范围是:语句,块,函数。小心引用或指针所引用的栈对象脱离范围,自动释放。
5。对象分为基本对象,类对象,基本类型临时变量不能转化为普通引用,只能转化为常量引用。
6。文字量, 即在源代码输入的文字。数字为int类型,字符串为 char const[字符个数+1] 。文字量为临时对象。
7。c风格字符串,文字量字符串可以转化为char * 和 char const*。但是他的真实类型是 char const[字符个数+1]。文字量字符串后添加字符'\0'为c风格字符串,通过类型char * 或 char const* 来使用,但是因为类型是错误的,所以应该小心奕奕。
8。c++是一种类型和对象分离的语言,类型决定编译时的正确性,对象决定运行时合法性。
9。引用是类型的一部分,但是引用和非引用的界限很掩蔽。因此,应该避免同时存在引用于非引用的参数,也就是采用统一的传值或传引用规范。
10。在类的设计中,引用和指针成员一般都不能默认的拷贝,而需要定义自己的拷贝函数。
11。拷贝函数需要检测拷贝的是否为自身。
12。类型转换是类的构造函数,实用T o(obj),同时调用了类型转换语法,而 T o = obj 没有显式调用类型转化。 operator T()是另一种类型转换,但是无显式或隐式的分别。
13。多采用中文名称。
问题点数:0、回复次数:9Top
1 楼weiyiabout()回复于 2006-12-01 23:04:10 得分 0
顶一个Top
2 楼cunsh(村少)回复于 2006-12-02 03:13:28 得分 0
int * & const; //??Top
3 楼expter(Give to dream of a new height,My2007!)回复于 2006-12-02 11:18:05 得分 0
int * & const; //好象没这个写法吧
13。多采用中文名称。
up..Top
4 楼htqx(航天奇侠)回复于 2006-12-02 16:35:07 得分 0
对哦。谢谢指正~Top
5 楼wxspll(HDU)回复于 2006-12-02 16:52:29 得分 0
However,mark first.Top
6 楼fflush(stdin)回复于 2006-12-02 18:28:32 得分 0
13。多采用中文名称。
-----------------------
什么意思Top
7 楼libinzhangyuan(zyfire)回复于 2006-12-02 20:08:01 得分 0
很多说法不是很严谨。
另:书不是拿来背的,背这些没有用。理解了,实践实践,再找高层次的书看看,加深理解。
如果可以的话,你买本c++ prima 看,边看边实践,看完了再买 c++编程思想 。Top
8 楼road1981(road)回复于 2006-12-02 22:32:08 得分 0
5。对象分为基本对象,类对象,基本类型临时变量不能转化为普通引用,只能转化为常量引用。
为啥专门说基本类型对象?类对象呢?
10。在类的设计中,引用和指针成员一般都不能默认的拷贝,而需要定义自己的拷贝函数。
1,类里面有引用成员?还真没用过
2,既然都有拷贝了,那是不是也应该说说拷贝构造,析构...
12。类型转换是类的构造函数,实用T o(obj),同时调用了类型转换语法,而 T o = obj 没有显式调用类型转化。 operator T()是另一种类型转换,但是无显式或隐式的分别。
还是看看tcpl里是怎么说的吧,感觉你对类型转换的概念不是很清晰...
Top
9 楼htqx(航天奇侠)回复于 2006-12-03 12:26:57 得分 0
我个人最讨厌的回答就是: 还是看xxx书,google。。。之类的
要就干脆不回答,我也不会怪你。
口水贴就不必要了。~~
看来发到csdn这个帖子已死。
Top




