本 Wiki 开启了 HTTPS。但由于同 IP 的 Blog 也开启了 HTTPS,因此本站必须要支持 SNI 的浏览器才能浏览。为了兼容一部分浏览器,本站保留了 HTTP 作为兼容。如果您的浏览器支持 SNI,请尽量通过 HTTPS 访问本站,谢谢!
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
cs:programming:cpp:cpp_primer:15_oop [2024/11/14 15:10] – [解决方案:面向对象] codinghare | cs:programming:cpp:cpp_primer:15_oop [2024/11/19 14:42] (当前版本) – [“豁免”单个成员] codinghare | ||
---|---|---|---|
行 276: | 行 276: | ||
* 静态类型指**变量声明时定义**的类型,或是**表达式得出的结果**的类型。这类类型在**编译期就能确认** | * 静态类型指**变量声明时定义**的类型,或是**表达式得出的结果**的类型。这类类型在**编译期就能确认** | ||
* 动态类型指**变量或者表达式在内存中表示的实际类型**,这类类型往往需要在**运行期**才能确认 | * 动态类型指**变量或者表达式在内存中表示的实际类型**,这类类型往往需要在**运行期**才能确认 | ||
- | 以 '' | + | 以 '' |
<WRAP center round info 100%> | <WRAP center round info 100%> | ||
需要注意的是,如果表达式的类型(接受参数的类型)**不是指针或者引用类型**,那么其静态类型与动态类型是**一**致的。 | 需要注意的是,如果表达式的类型(接受参数的类型)**不是指针或者引用类型**,那么其静态类型与动态类型是**一**致的。 | ||
行 579: | 行 579: | ||
}; | }; | ||
</ | </ | ||
- | ===“豁免”单个成员=== | + | ===使用 using “豁免”单个成员=== |
如果希望对某个指定的成员进行访问级别的变更,我们可以使用 '' | 如果希望对某个指定的成员进行访问级别的变更,我们可以使用 '' | ||
<code cpp> | <code cpp> | ||
行 806: | 行 806: | ||
C++ 中,派生类中的**合成拷贝控制成员**,在处理基类部分的资源时,会调用**基类中对应的拷贝控制成员**来处理。比如之前的 '' | C++ 中,派生类中的**合成拷贝控制成员**,在处理基类部分的资源时,会调用**基类中对应的拷贝控制成员**来处理。比如之前的 '' | ||
* '' | * '' | ||
- | * '' | + | * '' |
- | * 整个过程类似于一个递归的过程,最内层的基类中的成员会被首先初始化 | + | * 整个过程类似于一个递归的过程,最内层的基类 |
- | \\ < | + | \\ {{ :cs:programming:cpp:cpp_primer:cp_ctrl_derive.svg?300 |}} \\ \\ |
该规则同样适用于拷贝成员。比如拷贝构造函数,析构函数等。需要注意的是,该规则被应用的前提是**基类中对应的拷贝控制成员是可访问的(没有被删除的)**,而与成员是否是合成的并没有关系。 | 该规则同样适用于拷贝成员。比如拷贝构造函数,析构函数等。需要注意的是,该规则被应用的前提是**基类中对应的拷贝控制成员是可访问的(没有被删除的)**,而与成员是否是合成的并没有关系。 | ||
行 1263: | 行 1263: | ||
==表达式是如何以对象的形式表现的== | ==表达式是如何以对象的形式表现的== | ||
根据之前的内容,我们的表达式的最终结果,实质上是**不同单个关键词查询结果的逻辑运算**。因此,一个查询表达式的执行,实际上是在以 '' | 根据之前的内容,我们的表达式的最终结果,实质上是**不同单个关键词查询结果的逻辑运算**。因此,一个查询表达式的执行,实际上是在以 '' | ||
- | \\ \\ < | + | \\ \\ {{ :cs:programming:cpp:cpp_primer:expression_create.svg?500 |}} \\ \\ |
而具体执行的过程,也是按照这个树的顺序进行调用,直到达到最基本的单位时得出查询结果后,再依次返回上级,进行最后的结果的运算(类似递归的概念)。 | 而具体执行的过程,也是按照这个树的顺序进行调用,直到达到最基本的单位时得出查询结果后,再依次返回上级,进行最后的结果的运算(类似递归的概念)。 | ||
===Query_Base & Query 的实现=== | ===Query_Base & Query 的实现=== |