C++ 语言中的关键字

C++ 语言拥有丰富的关键字(也称为保留字),这些关键字具有特殊含义,编译器会按特定规则处理它们。以下是 C++ 中常见的关键字及其主要用途和含义的详细说明:


🧩 ​​核心关键字分类与详解​

​1. 基础类型声明​

关键字

用途

示例

说明

int

声明整数类型

int age = 30;

32位整数(通常)

float

单精度浮点数

float pi = 3.14f;

6-7位有效数字

double

双精度浮点数

double distance = 5.6e10;

15-16位有效数字

char

字符类型

char grade = 'A';

存储单个ASCII字符

bool

布尔类型

bool isReady = true;

仅取值 true/false

void

无类型

void print();

函数无返回值或指针通用类型

​2. 流程控制​

关键字

用途

示例

说明

if/ else

条件分支

if (x > 0) {...} else {...}

基础条件判断

switch/ case

多路分支

switch (value) { case 1: ... }

替代多重if-else

for

计数循环

for (int i=0; i<10; i++)

明确循环次数时使用

while

条件循环

while (data != null)

条件满足时持续循环

do/ while

后测试循环

do {...} while (x < 5);

至少执行一次循环体

break

跳出循环

if (error) break;

立即终止当前循环

continue

跳过本次迭代

if (x%2==0) continue;

跳过本次循环剩余代码

​3. 函数相关​

关键字

用途

示例

说明

return

函数返回值

return result * 2;

结束函数执行并返回结果

inline

内联函数

inline int max(int a, int b)

建议编译器做内联优化

​4. 面向对象编程 (OOP)​

关键字

用途

示例

说明

class

定义类

class Student { ... }

封装数据与方法的蓝图

struct

定义结构体

struct Point { int x,y; }

默认成员public的类

public

公有成员

public: void display();

类外部可访问

private

私有成员

private: int salary;

仅类内部可访问

protected

保护成员

protected: String id;

类内部及子类可访问

virtual

虚函数

virtual void draw() = 0;

实现多态的核心机制

override

重写虚函数

void draw() override {...}

明确表示重写父类方法

final

禁止重写/继承

class Widget final {...}

阻止类被继承或方法被重写

​5. 内存管理​

关键字

用途

示例

说明

new

动态内存分配

int* arr = new int[10];

堆上分配内存

delete

释放内存

delete[] arr;

释放new分配的内存

const

常量修饰

const int MAX = 100;

值不可修改的变量

​6. 高级特性​

关键字

用途

示例

说明

template

泛型编程

template <typename T>

定义通用函数或类

auto

自动类型推导

auto x = 5.0; // double

编译器自动推断类型

namespace

命名空间

namespace MyLib { ... }

避免命名冲突

try/ catch

异常处理

try {...} catch (...) {...}

捕获并处理运行时错误

static

静态成员

static int count = 0;

生命周期贯穿整个程序


📊 ​​C++ 关键字速查表(按功能分类)​

​类别​

​关键字​

​核心用途​

​类型定义​

int, char, bool, float, double, void, auto

定义变量或函数类型

​类与对象​

class, struct, public, private, protected, friend, virtual, override, final

面向对象编程基础

​流程控制​

if, else, switch, case, for, while, do, break, continue, goto

控制程序执行流

​函数处理​

return, inline, explicit

函数返回值与优化

​内存管理​

new, delete, const, constexpr, mutable, volatile

动态内存与常量控制

​模板编程​

template, typename

泛型编程支持

​异常处理​

try, catch, throw, noexcept

错误捕获与处理

​命名空间​

namespace, using

代码模块化管理

​其他​

static, extern, register, asm, sizeof, alignof

特殊场景使用


💡 ​​关键技巧与常见问题​

  1. const的多场景用法​​:

    • 常量变量:const int MAX_SIZE = 1024;

    • 常量指针:const char* str = "Hello";(指针可变,内容不可变)

    • 指针常量:char* const ptr = buffer;(指针不可变,内容可变)

  2. static的三种用途​​:

    • 局部静态变量:函数内持久化数据

    void counter() {
        static int count = 0; // 只初始化一次
        count++;
    }
    • 类静态成员:所有实例共享的数据

    class Logger {
    public:
        static int logCount; // 所有Logger实例共享
    };
    • 静态函数:无需实例即可调用

    class Math {
    public:
        static int square(int x) { return x*x; }
    };
  3. virtual与多态​​:

    • 虚函数实现运行时多态

    class Shape {
    public:
        virtual void draw() { /* 基类实现 */ }
    };
    class Circle : public Shape {
    public:
        void draw() override { /* 子类重写 */ }
    };

⚠️ ​​注意事项​

  • ​避免使用 goto​:破坏代码结构,现代编程中极少使用

  • ​慎用 mutable​:允许在 const成员函数中修改成员变量

  • explicit构造函数​​:防止隐式类型转换

    class Date {
    public:
        explicit Date(int day) { ... } // 禁止 Date d = 5; 写法
    };

掌握这些关键字是成为高效C++开发者的基础。建议在实际编码中逐步练习,加深理解!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值