当前位置: 首页 > article >正文

c++概念

C++语言设计期末考试知识点

1. 基础语法

  • 变量和数据类型

    • int, float, double, char, bool 等基本数据类型。
    • 常量:const 关键字。
    • 变量的作用域:局部变量、全局变量。
  • 输入输出

    • cincout:标准输入输出流。
    • 格式化输出:iomanip 中的 setw, setprecision 等函数。

2. 流程控制

  • 条件语句

    • if, else if, else 语句。
    • switch 语句及其使用场景,casedefault
  • 循环语句

    • for 循环:用于已知循环次数的场景。
    • while 循环:适用于不确定循环次数的场景。
    • do-while 循环:至少执行一次的循环。
    • 循环的控制语句:break, continue

3. 函数

  • 函数定义与声明

    • 返回值类型、参数列表和函数体。
    • 函数原型:函数的声明和定义的区别。
  • 函数重载

    • 同名函数可以根据参数类型或参数数量进行重载。
  • 递归

    • 递归函数:函数调用自身,经典案例如阶乘、斐波那契数列。

4. 数组和指针

  • 数组

    • 一维数组和多维数组的声明与使用。
    • 数组的遍历与初始化。
  • 指针

    • 指针的概念:存储变量地址的变量。
    • 指针的操作:*& 操作符。
    • 动态内存分配:newdelete 操作符,防止内存泄漏。
  • 指针与数组的关系

    • 数组名是指向第一个元素的指针。
    • 利用指针访问数组元素。

5. 面向对象编程(OOP)

  • 类与对象

    • 类的定义:数据成员和成员函数。
    • 对象的创建与使用。
    • 构造函数与析构函数:自动调用,构造函数的重载。
  • 封装

    • 访问控制修饰符:public, private, protected
    • getset 方法实现类的封装。
  • 继承

    • 基类和派生类:public, private, protected 继承方式的区别。
    • 构造函数的继承与重载。
    • 基类指针和派生类对象。
  • 多态性

    • 函数重写:在派生类中重新定义基类的虚函数。
    • 虚函数和纯虚函数:动态多态性。
    • 抽象类:包含纯虚函数的类。
  • 友元函数和友元类

    • friend 关键字,使非成员函数可以访问类的私有成员。

6. 运算符重载

  • 基本概念

    • 运算符重载允许为自定义类型定义运算符行为,如 +, -, [] 等。
  • 常用运算符重载

    • +-= 等运算符的重载。
    • 输入输出流运算符 <<, >> 的重载。

7. 标准模板库(STL)

  • 容器

    • vector, list, deque, set, map 等容器的使用。
    • 容器的基本操作:插入、删除、遍历等。
  • 迭代器

    • 迭代器的概念:用于访问容器中的元素。
    • 常用迭代器类型:begin(), end(), rbegin(), rend()
  • 算法

    • 常用的 STL 算法:sort(), find(), copy(), reverse() 等。

8. 异常处理

  • 基本语法

    • try, catch, throw 的使用。
    • 异常类的定义与使用。
  • 自定义异常

    • 继承标准异常类,如 std::exception

9. 文件操作

  • 文件流
    • ifstream, ofstream, fstream 的使用。
    • 文件的打开、读写操作。
    • 二进制文件的读写:ios::binary

10. 预处理器与宏

  • 宏定义

    • #define 定义常量与宏函数。
  • 条件编译

    • #ifdef, #ifndef, #endif 控制条件编译。

11. 名字空间(namespace)

  • 作用

    • 防止名字冲突,将不同的标识符封装在不同的命名空间中。
  • 使用方法

    • using namespace 的用法。

12. 动态内存管理

  • 内存分配

    • newdelete 操作符动态分配和释放内存。
  • 内存泄漏的防范

    • 使用智能指针(shared_ptr, unique_ptr)避免内存泄漏。

这个大纲涵盖了C++的核心知识点,建议优先复习面向对象编程(类、继承、多态性)、函数指针相关内容,这是考试中的常考内容。


http://www.kler.cn/a/308610.html

相关文章:

  • 鸿蒙学习基本概念
  • 【插件】多断言 插件pytest-assume
  • MybatisPlus入门(十)MybatisPlus-逻辑删除和多记录操作
  • 网页版五子棋——对战模块(服务器端开发②)
  • 机器学习基础02_特征工程
  • MySQL_第13章_视图
  • windows启动jar指定jdk路径
  • 网页本地存储
  • 【C++】list 模拟实现
  • Vscode运行Python无法导入自己编写的包的解决方法
  • 后端开发刷题 | 最长上升子序列
  • odoo14 | 报错:Database backup error: Access Denied
  • MyBatis之手动映射
  • SSL认证解说
  • 个人随想-gpt-o1大模型中推理链的一个落地实现
  • Linux学习记录十四----------线程的创建和回收
  • Leetcode—1184. 公交站间的距离【简单】
  • Linux(CentOS8)服务器安装RabbitMQ
  • Python数据分析工具(一):Requests的用法
  • 游戏中的唯一id生成,防止合服id重复
  • 成功激活mac idea 记录
  • Java封装(面向对象)
  • 104.WEB渗透测试-信息收集-FOFA语法(4)
  • 腾讯百度阿里华为常见算法面试题TOP100(4):双指针、哈希、滑动窗口
  • [go] 命令模式
  • 电信创维光猫DT741超级密码