admin 管理员组

文章数量: 1087139


2024年4月28日发(作者:异步的 英语)

C++ 关键字详解

C++关键字详解

一、关键字一览表:

asm double new switch

auto else operator template

break enum private this

case extern protected throw

catch float public try

char for return typedef

class friend register union

const goto short unsigned

continue if signed virtual

default inline sizeof void

delete int static volatile

do long struck while

第 1 页 共 5 页

二、关键字分类与解释:

ID

范畴

1

数据类型

2

3

4

5

6

7

8

9

数据类型

数据类型

数据类型

数据类型

数据类型

数据类型

数据类型

数据类型

关键字

bool

char

wchar_t

double

float

int

long

short

signed

unsigned

false

true

enum

union

struct

typename

typedef

sizeof

switch

case

break

default

continue

do

else

for

goto

if

while

return

auto

说明

基本类型—-布尔类型

基本类型—-字符类型

基本类型—-宽字符类型

基本类型—-实体型

基本类型—-浮点型

基本类型—-整型

基本类型—-长整型

基本类型—-短整型

基本类型—-有符号整型

基本类型—-无符号整型

布尔类型—-假值

布尔类型—-真值

基本类类型—枚举类型

基本类类型—联合类型

基本类类型—结构体类型

定义模板时,用此关键字表示通用类型。

取别名--用以给数据类型取别名

长度计算--计算类型占用的字节长度

switch分支语句

switch分支语句--条件判断

条件中断

switch分支语句—-默认分支

跳过继续

循环

分支

循环

跳转

分支

循环

返回

声明变量的生存期为自动,即将不在任何类、结构、

枚举、联合和函数中定义的变量视为全局变量,而

在函数中定义的变量视为局部变量。这个关键字不

怎么多写,因为所有的变量默认就是auto的。

被const修饰的东西都受到强制保护,可以预防意

外的变动,能提高程序的健壮性。

1. 修饰函数参数(非内部类型),即const引用

传递。

2. 修饰返回值(返回值为指针类型),只能赋给相

第 2 页 共 5 页

10

数据类型

11

数据类型

12

数据类型

13

数据类型

14

数据类型

15

数据类型

16

数据类型

17

数据类型

18

数据类型

19

条件控制

20

条件控制

21

条件控制

22

条件控制

23

条件控制

24

条件控制

25

条件控制

26

条件控制

27

条件控制

28

条件控制

29

条件控制

30

条件控制

31

语义修饰

32

语义修饰

const

同类型的变量。

3. 修饰变量

4. 修饰指针变量

33

语义修饰

34

语义修饰

35

语义修饰

36

语义修饰

extern

friend

inline

private

声明并引用此变量为外部变量,其存在于工程中的

某个文件中。

声明友元函数或者类。

声明定义内联函数,编译时将所调用的代码嵌入到

主函数中。

访问权限:类私有函数和数据成员的标示。private

成员只有该类自身的成员函数可以访问。

继承权限:父类的所有成员访问权限在 子类中变

为private。

访问权限:类公共函数和数据成员的标示。可通过

对象或类名访问。

继承权限:父类成员的访问权限在子类中不变,仍

为自己原来的权限。

访问权限:类受保护的函数和数据成员的标示。

protected成员只有该类的成员函数及其派生类

的成员函数可以访问。

继承权限:父类的public成员访问权限在子类中

变为protected;父类的protected成员和

private成员在子类权限维持原来的权限不变。

这个关键字命令编译器尽可能的将变量存在CPU

内部寄存器中,而不是通过内存寻址访问,从而提高

效率。

面向过程的static关键字

定义静态全局变量:

1. 作用域为本文件中,在其它文件中不可见。

2. 未初始化的静态全局变量会自动初始化,会被

程序自动初始化为0。

3. 静态全局变量在“全局数据区”分配内存。

定义静态局部变量

1. 作用域为本文件中的函数,只初始化一次,在

此函数多次调用时每次的值保持到下一次调

用,知道直到下次赋新值。

2. 静态局部变量一般在声明处初始化,如果没有

显式初始化,会被程序自动初始化为0。

3. 静态局部变量在“全局数据区”分配内存。

定义静态函数

1. 只在它声明的文件中可见。

面向对象的static关键字

定义类的静态数据成员

1. 静态数据成员被当作是类的成员,所有对象共

享访问,其值可以被更新。

第 3 页 共 5 页

37

语义修饰

public

38

语义修饰

protected

39

语义修饰

register

40

语义修饰

static

41

语义修饰

42

语义修饰

this

explicit

2. 静态数据成员和普通数据成员一样遵从

public,protected,private访问规则。

3. 静态数据成员存储在全局数据区。静态数据成

员定义时要分配空间。

4. 静态数据成员初始化格式如下:<数据类型>

<类名>::<静态数据成员名>=<值>

5. 静态数据成员的两种访问方式:

<类对象名>.<静态数据成员名> 或

<类类型名>::<静态数据成员名>

静态数据成员优点(与全局变量相比)

1. 静态数据成员没有进入程序的全局名字空间,

因此不存在与程序中其它全局名字冲突的可能

性。

2. 可以实现信息隐藏。静态数据成员可以是

private成员,而全局变量不能。

定义类的静态函数

1. 静态函数被当作是类的成员,所有对象共享访

问。

2. 在类内部声明时需要加上static关键字,在类外

部定义时不用加static关键字。

3. 非静态成员函数可以任意地访问静态成员函数

和静态数据成员。

4. 它不具有this指针,它无法访问属于类对象的

非静态数据成员,也无法访问非静态成员函数,

它只能调用其余的静态成员函数。

5. 调用格式:

<类名>::<静态成员函数名>(<参数表>)

用来修饰类的单参数的构造函数被自动类型转换,

表明该构造函数是显式的,隐式转换方可进行的程

序将会不能通过。

用于操作符重载

声明虚基类或虚函数。

说明变量在程序执行中可被隐含地改变,表明某个

变量的值可能在外部被改变,优化器在用到这个变

量时必须每次都小心地重新读取这个变量的值,而

不是使用保存在寄存器里的备份。

声明函数无返回值或无参数,声明无类型指针。

异常处理的语句。

异常处理的语句。

异常处理的语句。

异常处理的语句。

异常处理相关。,定义在typeinfo文件中。

异常处理相关。

第 4 页 共 5 页

43

语义修饰

44

语义修饰

45

语义修饰

operator

virtual

volatile

46

语义修饰

47

异常处理

48

异常处理

49

异常处理

50

异常处理

51

异常处理

52

异常处理

void

throw

try

catch

finally

bad_cast

const_cast

53

异常处理

54

异常处理

55

异常处理

56

内存操作

57

内存操作

58

类与模板

59

类与模板

60

类与模板

61

类与模板

62

其它待分

63

其它待分

64

其它待分

65

其它待分

66

其它待分

67

其它待分

dynamic_cast

异常处理相关。

reinterpret_cast

异常处理相关。

static_cast

异常处理相关。

new

delete

using

namespace

class

template

type_info

typeid

bad_typeid

asm

mutable

except

申请内存。

释放内存。。

将名称空间导入编译单元。

名称空间关键字

类关键字

模板类关键字

bad_typeid本质是一个类,定义在typeinfo

文件中。

asm已经被__asm替代了,用于汇编语言嵌入在

C/C++程序里编程,从而在某些方面优化代码。

第 5 页 共 5 页


本文标签: 成员 类型 函数 关键字