第二章 变量和基本类型

1.c++的两种表达式:

    左值:左值可以出现在赋值语句的左边或右边。(变量是左值)

    右值:右值只能出现在赋值的右边。(常量是右值)

2.变量的初始化方式:(在C++中,要注意初始化和赋值是两个概念)

    直接初始化;

    复制初始化:

3.变量初始化规则:

    内置类型变量的初始化:在函数体外定义的变量都初始化成 0,在函数体里定义的内置类型变量不进行自动初始化。

    类类型变量的初始化:通过默认的构造函数初始化。

4.声明和定义:

    int i; 是定义了一个int类型的变量i,同时也是变量i的声明。

    extern int i; 是对变量i的声明,但不是定义。(前提:变量i已经在其他文件中事先定义了)

    extern int t = 100; (特殊情况:这条语句虽然使用了extern,但是也有定义变量t的功能,因为对变量t进行了初始化。“有点混乱”)

5.const 的功能性质:

    1.它把一个对象(变量)转换成一个常量。

    2.const 对象(变量)默认为文件的局部变量。

    3.extern const int i;(通过在const 变量前加上extern关键字,可以使const变量被全局访问)

6.引用:

    1.对象的引用可以被看作是这个对象的指针。

    2.引用必须被初始化,必须用所引用的类型初始化。

    3.const引用是指向const的引用,否则就叫 非const引用。

7.类:

    1.每个类都定义了一个接口和一个实现。

    2.定义类时,通常先定义该类的接口,即该类所提供的操作。通过这些操作,可以决定该类完成其功能所需要的数据,以及是否需要定义一些函数来支持该类的实现。

8.头文件中不应该含有对象(变量)的定义。

    例外1:头文件中可以定义类,

    例外2:const对象,

    例外3:inline函数。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第十二章 自定义数据类型 12.1 结构体 结构体(structure)又叫结构,是一种构造类型,由若干成员构成,成员可以是一个基本数据类型或一个构造类型。 12.1.1 结构体声明 声明结构体的形式: struct 结构名 { 成员表列; }; 成员表列由若干个成员组成,每个成员必须做类型说明,形式为: 类型说明符 成员名; 例1:声明学生结构: struct student { int iNum; char cArrName[20]; char cSex; float fScore; }; 注意不要忘记}后的分号(;)。 成员名可与程序中其他变量同名,互不干扰。 结构体声明并不分配空间,结构体声明是在说明一种数据类型,不是变量定义。例1中结构体student与int、float一样都是数据类型。 声明结构体后可定义结构体变量,这时分配空间。 12.1.2 结构体变量定义 声明结构体后可以定义结构体变量。 定义方法: a.先声明结构体,再定义结构体变量 struct student { int iNum; char cArrName[20]; char cSex; float fScore; }; struct student stu1,stu2; 可以用宏定义使用一个符号常量表示一个结构体类型。 b.在声明结构体同时定义结构体变量 struct student { int iNum; char cArrName[20]; char cSex; float fScore; }stu1,stu2; c.直接定义结构体变量 struct { int iNum; char cArrName[20]; char cSex; float fScore; }stu1,stu2; 第三种与第二种区别在于省去了结构体类型名,而直接给出结构体变量。这种方法结构体只能用一次,即使再声明成员完全相同的结构体类型,也和此次定义的结构体类型属于不同的结构体类型。 结构体变量在内存空间中是连续存储的,结构体类型大小为sizeof(struct student),为各成员大小之和,各编译系统为内存管理方便可能分配大一些的内存空间来存储结构体,保证字节对齐。在Dev中上述结构体类型student为32字节。 结构体成员可以又是一个结构体,即构成嵌套的结构体。如: struct date { int year; int month; int day; }; struct student { int iNum; char cArrName[20]; char cSex; float fScore; struct date birthday; }; 12.1.3 结构体变量引用 1.结构变量初始化

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值