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个换)

相关推荐
老秦包你会几秒前
Qt第三课 ----------容器类控件
开发语言·qt
凤枭香3 分钟前
Python OpenCV 傅里叶变换
开发语言·图像处理·python·opencv
ULTRA??7 分钟前
C加加中的结构化绑定(解包,折叠展开)
开发语言·c++
听忆.13 分钟前
手机屏幕上进行OCR识别方案
笔记
远望清一色23 分钟前
基于MATLAB的实现垃圾分类Matlab源码
开发语言·matlab
confiself32 分钟前
大模型系列——LLAMA-O1 复刻代码解读
java·开发语言
凌云行者42 分钟前
OpenGL入门005——使用Shader类管理着色器
c++·cmake·opengl
XiaoLeisj44 分钟前
【JavaEE初阶 — 多线程】Thread类的方法&线程生命周期
java·开发语言·java-ee
凌云行者1 小时前
OpenGL入门006——着色器在纹理混合中的应用
c++·cmake·opengl
杜杜的man1 小时前
【go从零单排】go中的结构体struct和method
开发语言·后端·golang