C++集锦内容5,6,7,8

5:回车符和换行符

(\r)使用回车符产生的段落:真正的段落。 
(\n)手工换行符产生的段落:在两个回车符之间运用手工换行符所产生的段落,只能使用同种格式。简单地说,手工换行符介于软回车(自动换行)和硬回车(回车符)之间,即保留了软回车的性质(不论多少个手工换行产生的段落,仍只是行的性质,直到出现回车符后才算一个完整的段落),达到硬回车的页面视觉效果(显示和打印的是按作者需要在不满行时转到下一行)。

   
6:初始化和赋值

初始化是指创建变量并给它赋予初始值,而赋值是擦去对象的当前值并用新值代替.
复制初始化:int i = 1024; 直接初始化: int i(1024);
很多人把复制初始化中= 误认为是赋值,他们之间有很微妙的区别,这是一个关键的概念.
对于内置类型的对象的初始化,复制和直接两种方法几乎没有差别,而对于类类型的对象的初始化,有些仅能用直接初始化完成.如有些类对象可以有多个数据成员....

7: 声明和定义

定义:用于分配存储空间,还可以为变量指定初始值.在一个程序总,变量有且仅有一个定义.
声明:用于向程序表明变量的类型和名字,定义也是声明,当定义变量时我们声明了它的类型和名字,可以通过使用extern关键字声明变量名而不定义它.不定义变量的声明包括对象名,对象类型和对象类型前的关键字extern:
extern int i;仅仅是声明了在程序其他地方定义了i, 而 int i,是定义变量i.一个变量的声明可以有多次,但是定义只能有一次
如果用extern double pi = 3.1416.后面有了初始化,所以,这个应该为定义.

8:  string 对象的比较,赋值过程,相加

比较: 1:如果两个string对象的长度不同,且短的string对象与长的string对象的前面部分相匹配,则短的string对象小于长的string对象
         2:如果两个string对象的字符不同,则比较第一个不匹配的字符.
         3:在大多数计算机上.大写字母是小于小写字母的.
赋值过程: string str1,str2 ="hello world";然后str1 = str2,这个过程,是先把str1占用的相关内存释放掉,然后再分配给str1足够存放str2副本的存储空间,最后把str2中的所有字符复制到新分配的空间.
相加:
string s1 "hello";     OK
string s2= "world";     OK
string s3= s1 + ",  ";    OK 
string s4 = "hello"+ ", ";     error:no string operand
string s5 = s1+ ", " + "world";   OK
string s6 = "hello"+ ", " + s2 ;  error :  can't add string literals.
string对象中函数size()返回值类型是size_type.

posted @ 2011-08-12 15:00  Small Wolf  阅读(143)  评论(0)    收藏  举报