<!-- [if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:PunctuationKerning/>
<w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing>
<w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery>
<w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:Compatibility>
<w:SpaceForUL/>
<w:BalanceSingleByteDoubleByteWidth/>
<w:DoNotLeaveBackslashAlone/>
<w:ULTrailSpace/>
<w:DoNotExpandShiftReturn/>
<w:AdjustLineHeightInTable/>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:UseFELayout/>
</w:Compatibility>
<w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
</w:WordDocument>
</xml><![endif]--><!-- [if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" LatentStyleCount="156">
</w:LatentStyles>
</xml><![endif]--><!-- [if gte mso 10]>
<mce:style><!--
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-fareast-font-family:"Times New Roman";
mso-ansi-language:#0400;
mso-fareast-language:#0400;
mso-bidi-language:#0400;}
--><!-- [endif]-->
#include
<iostream>
using
namespace
std
;
class
SuperClass
{
public
:
SuperClass
():itsAge
(1)
{ }
virtual
~SuperClass
()
{ }
virtual
void
doSomething
() const
{ cout
<< "SuperClass
doSomething!\n"; }
protected
:
int
itsAge
;
};
class
SubClass
: public
SuperClass
{
public
:
void
doSomething
()const
{ cout
<< "SubClass doSomething!\n"; }
};
void
PtrFunction
(SuperClass
* x
)
{
x
->doSomething
();
}
void
RefFunction
(SuperClass
& x
)
{
x
= (SuperClass
)x
;
x
.doSomething
();
}
void
ValFunction
(SuperClass
x
)
{
x
.doSomething
();
}
int
main
()
{
SuperClass
* ptr
=0;
ptr
= new
SubClass
;
PtrFunction
(ptr
);
RefFunction
(*ptr
);
ValFunction(*ptr); // 此处会调用到超类的doSomeThing方法
(*ptr
).doSomething
();
SuperClass
x
= (SuperClass
)(*ptr
);
x
.doSomething
();
return
0;
}
分享到:
相关推荐
根据提供的文件信息,我们可以归纳出一系列C++编程中需要注意的关键知识点。这些知识点涵盖了类的构造、复制构造函数、赋值运算符重载、初始化列表、指针管理等多个方面,对于理解C++中的对象生命周期和资源管理至关...
由于提供的文件内容实际上是一串看似无序和混乱的字符和代码片段,其中还夹杂了一些考试注意事项的模糊暗示,我们首先需要从这些内容中提炼出相关的计算机二级C++考试的知识点。由于内容的不完整性,我们无法保证...
总结C++中多线程要注意的事项,不能跨线程调用MFC对象等等
同时,《The C++ Programming Language》和《Inside The C++ Object Model》是两本深入学习C++的权威著作,尽管难度较大,但它们对C++的底层机制和标准有详尽的阐述,是进阶学习的重要参考。 集成开发环境(IDE)如...
在准备C++相关的面试时,理解并掌握C++的基础概念、语法特性、内存管理、面向对象编程、模板、STL库、异常处理等核心知识点至关重要。以下是对这些关键领域的详细阐述: 1. **C++基础**:理解C++的基础语法,如变量...
C++安装教程及注意事项 C++是一种高效、灵活的编程语言,广泛应用于操作系统、应用程序、游戏开发等领域。要开始学习和使用C++,首先需要安装C++编译器。以下是C++安装教程及注意事项,旨在帮助初学者快速掌握C++的...
C#调用C++DLL注意事项:C#调用C++DLL注意事项: 1>C#值类型与引用类型的内存特点 2>平台调用中DllImport,StructLayout,MarshalAS的各属性及其含义 3>C++中结构体的内存布局规则 。。。。。。
本指南的目的是通过详细阐述 C++ 注意事项来驾驭其复杂性. 这些规则在保证代码易于管理的同时, 也能高效使用 C++ 的语言特性. 风格, 亦被称作可读性, 也就是指导 C++ 编程的约定. 使用术语 “风格” 有些用词不当, ...
本文主要探讨了C++中处理二进制文件的一些注意事项,包括文件的打开、读写以及定位。 首先,我们来看文件的打开。在C++中,通常使用`fstream`库来处理文件操作。例如,我们可以声明一个`fstream`类型的对象`f`,...
七、代码实现与注意事项 1. 在编译时,确保链接了OpenCV和可能需要的其他依赖库。 2. 注意模型文件路径的正确性,防止因找不到文件而导致运行错误。 3. 预处理和后处理的参数设置要与模型训练时保持一致,如缩放比例...
在C++编程中,有几个关键概念和注意事项是开发者必须了解的。首先是类和对象的使用。析构函数是C++中一个重要的概念,它的主要任务不是删除对象,而是执行对象销毁前的清理工作,比如释放资源。析构函数在对象生命...
在单片机与DSP系统中使用C/C++语言编写基于DSP程序时,需要注意以下几个关键点,以确保程序的效率和可维护性。 1. **优化处理与函数选择**: 在不影响执行速度的情况下,可以利用C/C++的标准库函数,如fabs()或abs...
### C++安装注意事项与C++和Python语言对比分析 #### C++安装注意事项 在准备安装C++环境前,有几个关键点需要特别注意: 1. **系统兼容性**:确保计算机的操作系统、RAM(随机访问存储器)以及硬盘空间等硬件...
以下是一些重要的C++知识点及其注意事项: **1. 指针的初始化与安全使用** 指针是C++中强大的工具,但如果不正确地使用,可能会引发严重的问题。在提供的代码示例中: ```cpp int *p; *p = 9; ``` 指针`p`未初始化...
规则的作用就是避免混乱. 但规则本身一定要权威, 有说服力, 并且是理性的....本指南的目的是通过详细阐述 C++ 注意事项来驾驭其复杂性. 这些规则在保证代码易于管理的同时, 也能高效使用 C++ 的语言特性.
以下是对C++笔试题及其注意事项的详细解析。 1. **基础知识** - **变量与类型**:理解各种基本数据类型如int、float、double、char,以及如何声明、初始化和操作变量。 - **运算符**:包括算术、比较、逻辑、位...
自己写的学习C++,Qt过程中的注意点.个人觉得当你能够编写一些小程序之后再看看它。
描述了c++的多线程的注意事项。包括不能跨线程访问MFC对象等
### C++代码走读意见与开发注意事项 #### 内存管理与安全性 在软件开发过程中,尤其是使用C++这类提供底层内存操作的语言时,代码质量和安全性尤为重要。本篇将基于给定的“C++代码走读意见--开发注意事项”文件中...
【C++ 语言基础知识】 C++ 是一种强大的、通用的编程语言,它的设计结合了低级语言的效率和高级语言的抽象能力。在C++课件中,学习者将接触到以下核心概念: 1. **保留字**:保留字是语言预定义的具有特殊含义的...