关闭

2011年1月15日

99人阅读 评论(0) 收藏 举报

 

 

一.字面值常量

后缀尽量使用大写。

1.整形字面值规则

以0开头的字面值证书常量表示八进制,以0x或者0X开头的表示十六进制

可通过在数值后面加U或者u定义unsigned类型,同时加L和U就能够得到unsigned loing类型,不分先后,但是不能有空格。

2.浮点型字面规则

通常可以用十进制或者科学计数法来表示浮点字面值,默认的浮点字面值常量为double类型,后缀为F或者f表示单精度,再加上L或者l表示扩展精度。

3.字符字面值

字符字面值前面加L就能够得到wchar_t类型的宽字符字面值,如L‘a’,字符串字面值也是如此

4.非打印字符转义序列

水平制表符/t   纵向制表符/v  退格符/b  回车符/r  报警符号 /a 

5.字符串字面值的连接

连接字符串字面值和宽字符字面值,结果是未定义的,不同的编译器下结果不同。

6.多行字面值

在一行的末尾加一个反斜线符号可将此行和下一行当作同一行处理。

 

 

不要依赖未定义行为!!!

 

二.变量

命名的习惯最重要的是保持一致

 

三.对象

1.初始化

直接初始化和复制初始化, 即 int a(100);和 int a = 100;两种初始化的文法可以互相混合。

初始化不等于复制,初始化是创建变量并且给他初始值,复制是擦除对象的当前值并且用新值代替。

直接初始化语法更加灵活并且效率更高。

string stringA(10,‘9’)//stringA = “9999999999” 使用计数器和字符初始化的唯一方法是直接初始化,有多个初始化式时不能使用复制初始化。

2.变量初始化规则

(1)内置类型变量初始化规则

内置类型变量是否自动初始化取决于定义变量的位置,在函数体外定义的变量都初始化为0,在函数体内的定义内置类型的变量不进行自动初始化

每个内置类型的变量都需要初始化!

(2)定义和声明

extern int a ;声明不是定义也不分配储存空间,可声明多次,当声明有初始化式时,也可为定义。

声明只是说明变量定义在程序的其他地方。

把一个变量定义在他首次使用地方是个好办法。

P48

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:507次
    • 积分:20
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档
    阅读排行