zoukankan      html  css  js  c++  java
  • C++关键字简述

    ID

    范畴

    关键字

    说明

    1

    数据类型

    bool

    基本类型—-布尔类型

    2

    数据类型

    char

    基本类型—-字符类型

    3

    数据类型

    wchar_t

    基本类型—-宽字符类型

    4

    数据类型

    double

    基本类型—-实体型

    5

    数据类型

    float

    基本类型—-浮点型

    6

    数据类型

    int

    基本类型—-整型

    7

    数据类型

    long

    基本类型—-长整型

    8

    数据类型

    short

    基本类型—-短整型

    9

    数据类型

    signed

    基本类型—-有符号整型

    10

    数据类型

    unsigned

    基本类型—-无符号整型

    11

    数据类型

    false

    布尔类型—-假值

    12

    数据类型

    true

    布尔类型—-真值

    13

    数据类型

    enum

    基本类类型—枚举类型

    14

    数据类型

    union

    基本类类型—联合类型

    15

    数据类型

    struct

    基本类类型—结构体类型

    16

    数据类型

    typename

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

    17

    数据类型

    typedef

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

    18

    数据类型

    sizeof

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

    19

    条件控制

    switch

    switch分支语句

    20

    条件控制

    case

    switch分支语句--条件判断

    21

    条件控制

    break

    条件中断

    22

    条件控制

    default

    switch分支语句—-默认分支

    23

    条件控制

    continue

    跳过继续

    24

    条件控制

    do

    循环

    25

    条件控制

    else

    分支

    26

    条件控制

    for

    循环

    27

    条件控制

    goto

    跳转

    28

    条件控制

    if

    分支

    29

    条件控制

    while

    循环

    30

    条件控制

    return

    返回

    31

    语义修饰

    auto

    声明变量的生存期为自动,即将不在任何类、结构、枚举、联合和函数中定义的变量视为全局变量,而在函数中定义的变量视为局部变量。这个关键字不怎么多写,因为所有的变量默认就是auto的。

    32

    语义修饰

    const

    被const修饰的东西都受到强制保护,可以预防意外的变动,能提高程序的健壮性。

    1. 修饰函数参数(非内部类型),即const引用传递。
    2. 修饰返回值(返回值为指针类型),只能赋给相同类型的变量。
    3. 修饰变量
    4. 修饰指针变量

    33

    语义修饰

    extern

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

    34

    语义修饰

    friend

    声明友元函数或者类。

    35

    语义修饰

    inline

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

    36

    语义修饰

    private

    访问权限:类私有函数和数据成员的标示。private成员只有该类自身的成员函数可以访问。

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

    37

    语义修饰

    public

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

    继承权限:父类成员的访问权限在子类中不变,仍为自己原来的权限。

    38

    语义修饰

    protected

    访问权限:类受保护的函数和数据成员的标示。protected成员只有该类的成员函数及其派生类的成员函数可以访问。

    继承权限:父类的public成员访问权限在子类中变为protected;父类的protected成员和private成员在子类权限维持原来的权限不变。

    39

    语义修饰

    register

    这个关键字命令编译器尽可能的将变量存在CPU内部寄存器中,而不是通过内存寻址访问,从而提高效率。

    40

    语义修饰

    static

    面向过程的static关键字

    定义静态全局变量

    1. 作用域为本文件中,在其它文件中不可见。
    2. 未初始化的静态全局变量会自动初始化,会被程序自动初始化为0。
    3. 静态全局变量在“全局数据区”分配内存。

    定义静态局部变量

    1. 作用域为本文件中的函数,只初始化一次,在此函数多次调用时每次的值保持到下一次调用,知道直到下次赋新值。
    2. 静态局部变量一般在声明处初始化,如果没有显式初始化,会被程序自动初始化为0。
    3. 静态局部变量在“全局数据区”分配内存。

    定义静态函数

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

    面向对象的static关键字

    定义类的静态数据成员

    1. 静态数据成员被当作是类的成员,所有对象共享访问,其值可以被更新。
    2. 静态数据成员和普通数据成员一样遵从public,protected,private访问规则。
    3. 静态数据成员存储在全局数据区。静态数据成员定义时要分配空间。
    4. 静态数据成员初始化格式如下:<数据类型><类名>::<静态数据成员名>=<值>
    5. 静态数据成员的两种访问方式:

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

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

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

    1. 静态数据成员没有进入程序的全局名字空间,因此不存在与程序中其它全局名字冲突的可能性。
    2. 可以实现信息隐藏。静态数据成员可以是private成员,而全局变量不能。

    定义类的静态函数

    1. 静态函数被当作是类的成员,所有对象共享访问。
    2. 在类内部声明时需要加上static关键字,在类外部定义时不用加static关键字。
    3. 非静态成员函数可以任意地访问静态成员函数和静态数据成员。
    4. 它不具有this指针,它无法访问属于类对象的非静态数据成员,也无法访问非静态成员函数,它只能调用其余的静态成员函数。
    5. 调用格式:

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

    41

    语义修饰

    this

    42

    语义修饰

    explicit

    用来修饰类的单参数的构造函数被自动类型转换,表明该构造函数是显式的,隐式转换方可进行的程序将会不能通过。

    43

    语义修饰

    operator

    用于操作符重载

    44

    语义修饰

    virtual

    声明虚基类或虚函数。

    45

    语义修饰

    volatile

    说明变量在程序执行中可被隐含地改变,表明某个变量的值可能在外部被改变,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。

    46

    语义修饰

    void

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

    47

    异常处理

    throw

    异常处理的语句。

    48

    异常处理

    try

    异常处理的语句。

    49

    异常处理

    catch

    异常处理的语句。

    50

    异常处理

    finally

    异常处理的语句。

    51

    异常处理

    bad_cast

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

    52

    异常处理

    const_cast

    异常处理相关。

    53

    异常处理

    dynamic_cast

    异常处理相关。

    54

    异常处理

    reinterpret_cast

    异常处理相关。

    55

    异常处理

    static_cast

    异常处理相关。

    56

    内存操作

    new

    申请内存。

    57

    内存操作

    delete

    释放内存。。

    58

    类与模板

    using

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

    59

    类与模板

    namespace

    名称空间关键字

    60

    类与模板

    class

    类关键字

    61

    类与模板

    template

    模板类关键字

    62

    其它待分

    type_info

    63

    其它待分

    typeid

    64

    其它待分

    bad_typeid

    bad_typeid本质是一个类,定义在typeinfo文件中。

    65

    其它待分

    asm

    asm已经被__asm替代了,用于汇编语言嵌入在C/C++程序里编程,从而在某些方面优化代码。

    66

    其它待分

    mutable

    67

    其它待分

    except

  • 相关阅读:
    案例分享:Qt+Arm基于RV1126平台的内窥镜软硬整套解决方案(实时影像、冻结、拍照、录像、背光调整、硬件光源调整,其他产品也可使用该平台,如视频监控,物联网产品等等)
    libzip开发笔记(二):libzip库介绍、ubuntu平台编译和工程模板
    案例分享:Qt西门子机床人机界面以及数据看板定制(西门子通讯,mysql数据库,生产信息,参数信息,信息化看板,权限控制,播放器,二维图表,参数调试界面)
    sshpass 简介
    SSH 协议及 OpenSSH 实现
    Linux从头学07:中断那么重要,它的本质到底是什么?
    Linux从头学06:16张结构图,彻底理解【代码重定位】的底层原理
    Linux从头学05-系统启动过程中的几个神秘地址,你知道是什么意思吗?
    所有编程语言中的栈操作,底层原理都在这里
    WSL2:Windows 亲生的 Linux 子系统
  • 原文地址:https://www.cnblogs.com/wenrenhua08/p/3935022.html
Copyright © 2011-2022 走看看