C++面向对象编程基础与特性的关键知识点

版权申诉
0 下载量 160 浏览量 更新于2024-06-27 1 收藏 47KB DOCX 举报
在C++编程中,面向对象是核心概念之一,它将程序分解为可重用的对象,每个对象都包含了数据和操作这些数据的方法。第21题提到的"基本组成单元"指的是类(Class),它是C++中创建对象的基础,封装了数据和行为。C++中的控制结构包括顺序结构、分支结构(如if-else语句)和循环结构(如for、while等)。 第22题涉及浮点数的精度设置和输出,`pi`通常是一个预定义的常量,使用`setprecision`设置输出小数位数后,输出结果可能是3位精度的圆周率近似值。接下来,C++中的STL(Standard Template Library)提供了丰富的算法,其中对数组进行降幂排序需要用到`<algorithm>`头文件。 C++标准库中的`complex`类用于表示复数,使得处理复数运算变得更加方便。在C++中,实参和形参之间的值传递是非拥有所有权的,即对象的引用或指针被传递,而非对象本身。 函数的返回类型可以是多种数据类型,但不包括数组和指针,因为它们是特殊的用法。第28题提到的封装是C++中的一个关键字,通过private、protected和public修饰成员变量和方法,实现了数据的隐藏和访问控制。 在类的声明中,public关键字表示成员的访问级别是公共的,其他类可以自由访问。开发C++程序的流程包括编辑源代码、编译、连接、运行和调试,其中编译阶段将源代码转化为机器可执行代码。 析构函数(Destructor)是类中的一种特殊成员函数,当对象生命周期结束时自动调用,清理资源。友元函数(Friend Function)可以访问类的私有和保护成员,但它是类设计的一个例外,因为它打破了封装原则。 静态成员函数(Static Member Function)被static修饰,它不属于特定的对象实例,而是属于类本身。派生类的实例化过程会从基类的构造函数开始,继承基类的数据成员和成员函数。 在C++中,利用`std::vector`模板定义一个具有20个double元素的向量,并将所有元素设为特定值,可以使用`vector<double> vec(20, value)`。获取最后一个元素的方法是`vec.back()`。 虚函数(Virtual Function)是一种多态性的实现方式,它允许基类的指针或引用调用派生类中的函数。友元破坏了面向对象的封装性,使得类的内部细节暴露给外部,可能导致安全性和维护性的降低。 代码片段`cout << showpoint << ;`的输出取决于`showpoint`的值,如果`showpoint`是一个可以输出的变量或者对象,那么它的值会被打印出来。输出整型变量`a`的值到屏幕的C++语句是`cout << a;`。 从一个对象流向另一个对象的数据流动抽象为流(Stream),读取流中的数据则称为输入(Input)。代码`int b = 100; cout << "Hex:" << hex << b;`输出十进制100转换为十六进制的结果。 最后,静态联编支持的是静态多态性(Static Polymorphism),也称为编译时多态性,它在编译期间确定函数调用。