C++笔记(1)

1. C语言和C++的区别?

C语言作为一种过程性语言,侧重于通过算法描述来指导计算机执行,将复杂程序分解为简单、可管理的模块。 C语言支持模块化编程,每个模块作为独立的单元。C++融合了3中不同的编程方式:C语言、面向对象语言、泛型编程。

2. 什么是类?

类是一种规范,定义了数据成员和成员函数,构成了一个新的数据类型。类描述了对象的特征和行为。对象是类的具体实例,即根据类的规范创建的数据结构。每个对象都拥有类所定义的属性和方法,通过对象可以进行实际的数据操作和功能实现。

3.什么是封装?

封装,类可以将内部数据(私有成员)隐藏起来,仅暴露有限的公共接口(公有成员函数)供外部访问,这样可以防止数据被不当修改。

4.什么是多态?

多态允许使用一个接口来表示不同类型的实体,从而能够在不修改现有代码的情况下,使程序能够处理多种数据类型或类的对象。这通过虚函数、重载运算符和函数重写等机制实现。

5.什么是继承?

继承是一种建立类与类之间关系的方式,子类可以继承父类的属性和方法,并在此基础上添加或修改,实现代码的复用和扩展。这有助于构建一个层次化的类结构,促进模块化和灵活性。

6. 预处理指令有什么用?

#include<>编译之前, 使用指定的内容特换该预处理指令。

#define定义符号常量,但是更好的使用const

7.头文件注意的问题是什么?

8.名称空间有什么用?

避免名称冲突。

9.const类型有什么用?

定义常量,编译器不允许修改该常量的值。比#define好,能确定类型,使用const将作用域限定再特定的作用域中。const可以用于更复杂的类型。

10.类型转换?

整形提升不会损失数据。

强制类型转换。

static_cast<>可以将值从一种类型转换为另一种类型。

11.auto声明?

让编译器可以初始值推断变量的类型,如STL中类型时,自动类型推断很方便。

12.什么是union?

union的各个成员共享相同的内存位置,因此只能存储一个成员的值。如果更改一个成员的值,会影响其他成员的值。大小等于最大成员的大小:union的大小等于其中最大成员的大小。

cpp 复制代码
union UnionName {
    data_type member1;data_type member2; data_type memberN;
};

13.什么是结构体?

结构是用户定义的类型,C++结构除了成员变量还有成员函数。

14.什么是enum?什么是枚举类?

enum是枚举类型,是一种用户自定义的数据类型,由一组常量组成,这些常量代表一个固定的整数值序列。可以提高代码的可读性,用有意义的名称而不是抽象的数字来表示。

cpp 复制代码
enum EnumName {
    enumerator1, enumerator2,..., enumeratorN
};

默认第一个枚举成员的值为0,之后每个成员的值依次递增1,也可以显示赋值。

C++11引入了enum class,可以更好的作用域控制和类型安全。枚举成员需要通过加上类名前缀来访问,避免名称冲突。

cpp 复制代码
enum class Color {
    Red,
    Green,
    Blue
};

待(整理100个换)

相关推荐
自信150413057592 分钟前
重生之从0开始学习c++之模板初级
c++·学习
青梅橘子皮5 分钟前
C语言---指针的应用以及一些面试题
c语言·开发语言·算法
浅时光_c33 分钟前
3 shell脚本编程
linux·开发语言·bash
历程里程碑34 分钟前
2. Git版本回退全攻略:轻松掌握代码时光机
大数据·c++·git·elasticsearch·搜索引擎·github·全文检索
极客智造1 小时前
深度解析 C++ 类继承与多态:面向对象编程的核心
c++
Evand J1 小时前
【三维轨迹目标定位,CKF+RTS,MATLAB程序】基于CKF与RTS平滑的三维非线性目标跟踪(距离+方位角+俯仰角)
开发语言·matlab·目标跟踪
今天又在写代码2 小时前
java-v2
java·开发语言
江湖人称小鱼哥2 小时前
Obsidian-Graphify-让你的笔记库自己长出知识图谱
笔记·知识图谱·obsidian·claude code·graphify·卡帕西
competes2 小时前
慈善基金投资底层逻辑应用 顶层代码低代码配置平台开发结构方式数据存储模块
java·开发语言·数据库·windows·sql
Ulyanov3 小时前
用Pyglet打造AI数字猎人:从零开始的Python游戏开发与强化学习实践
开发语言·人工智能·python