c++语法(2)
#include<iostream>
#include<windows.h>
using namespace std; class Parents
{
public:
virtual void vir_func(char a='x',char b='y',char c='z'); //虚函数
Parents();
~Parents();
}; void Parents::vir_func(char a,char b,char c)
{
cout<<"父类的vir_func函数正在运行..."<<"参数为:"<<a<<","<<b<<","<<c<<endl; }
Parents::Parents()
{
cout<<"父类的构造函数正在运行..."<<endl; } Parents::~Parents()
{} class Child:public Parents
{
public:
~Child();
Child(int a,char c);
};
Child::Child(int i,char c)
{
cout<<"子类的构造函数正在运行..."<<"参数为:"<<i<<","<<c<<endl; }
Child::~Child()
{} class B
{
public:
Parents *Par;
void Init();
};
void B::Init()
{
//父类指向子类
Par=new Child(,'c');
cout<<"基类类型的指针已经绑定到派生类..."<<endl;
Par->vir_func('d','e','f');
} int main()
{ B Test;
Test.Init();
system("pause");
return ;
}
#include<iostream>
#include<windows.h>
using namespace std; class Parents
{
public:
virtual void vir_func(char a='x',char b='y',char c='z'); //虚函数
Parents();
~Parents();
}; void Parents::vir_func(char a,char b,char c)
{
cout<<"父类的vir_func函数正在运行..."<<"参数为:"<<a<<","<<b<<","<<c<<endl; }
Parents::Parents()
{
cout<<"父类的构造函数正在运行..."<<endl; } Parents::~Parents()
{} class Child:public Parents
{
public:
void vir_func(char a,char b,char c);
~Child();
Child(int a,char c);
};
void Child::vir_func(char a,char b,char c)
{
cout<<"子类的vir_func函数正在运行..."<<"参数为:"<<a<<","<<b<<","<<c<<endl;
}
Child::Child(int i,char c)
{
cout<<"子类的构造函数正在运行..."<<"参数为:"<<i<<","<<c<<endl; }
Child::~Child()
{} class B
{
public:
Parents *Par;
void Init();
};
void B::Init()
{
//父类指向子类
Par=new Child(,'c');
cout<<"基类类型的指针已经绑定到派生类..."<<endl;
Par->vir_func('d','e','f');
} int main()
{ B Test;
Test.Init();
system("pause");
return ;
}
从上面的2段程序可以看出:
当基类动态绑定到派生类时,如果派生类没有实现基类的虚函数,那么调用的是基类自己实现的虚函数。
若派生类重新定义虚函数,那么执行的则是派生类实现的虚函数。
c++语法(2)的更多相关文章
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- Swift与C#的基础语法比较
背景: 这两天不小心看了一下Swift的基础语法,感觉既然看了,还是写一下笔记,留个痕迹~ 总体而言,感觉Swift是一种前后端多种语言混合的产物~~~ 做为一名.NET阵营人士,少少多多总喜欢通过对 ...
- 探索C#之6.0语法糖剖析
阅读目录: 自动属性默认初始化 自动只读属性默认初始化 表达式为主体的函数 表达式为主体的属性(赋值) 静态类导入 Null条件运算符 字符串格式化 索引初始化 异常过滤器when catch和fin ...
- [C#] 回眸 C# 的前世今生 - 见证 C# 6.0 的新语法特性
回眸 C# 的前世今生 - 见证 C# 6.0 的新语法特性 序 目前最新的版本是 C# 7.0,VS 的最新版本为 Visual Studio 2017 RC,两者都尚未进入正式阶段.C# 6.0 ...
- Velocity初探小结--velocity使用语法详解
做java开发的朋友一般对JSP是比较熟悉的,大部分人第一次学习开发View层都是使用JSP来进行页面渲染的,我们都知道JSP是可以嵌入java代码的,在远古时代,java程序员甚至在一个jsp页面上 ...
- node.js学习(二)--Node.js控制台(REPL)&&Node.js的基础和语法
1.1.2 Node.js控制台(REPL) Node.js也有自己的虚拟的运行环境:REPL. 我们可以使用它来执行任何的Node.js或者javascript代码.还可以引入模块和使用文件系统. ...
- C#语法糖大汇总
首先需要声明的是"语法糖"这个词绝非贬义词,它可以给我带来方便,是一种便捷的写法,编译器会帮我们做转换:而且可以提高开发编码的效率,在性能上也不会带来损失.这让java开发人员羡慕 ...
- 值得注意的ibatis动态sql语法格式
一.Ibatis常用动态sql语法,简单粗暴用一例子 <select id="iBatisSelectList" parameterClass="java.util ...
- Flex 布局教程:语法篇
作者: 阮一峰 网页布局(layout)是CSS的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便 ...
- postgresql 基本语法
postgresql数据库创建/修改/删除等写入类代码语法总结: 1,创建库 2,创建/删除表 2.1 创建表 create table myTableName 2.2 如果表不存在则创建表 crea ...
随机推荐
- mysql 分组查询教程
1.分组 分组就是将一个“数据集”划分成若干个“小区域”,然后针对若干个“小区域”进行数据处理. 2.分组的特点 1.)group by的含义:将查询结果按照1个或多个字段进行分组,字段值相同的为一组 ...
- vim使用技巧(常用指令)
1. vim基础操作 vim是从 vi 发展出来的一个文本编辑器 .代码补完.编译及错误跳转等做了一些增强 1.1 进入编辑模式 命令 含义 i和I i在光标前插入,I在行首插入. a和A a在光标后 ...
- js对象等号赋值的bug
var a = {n: 1}; var b = a; a.x = a = {n: 2}; console.log(a.x); console.log(b.x); 有道题是这样的,觉得很奇葩,分析一下 ...
- QThread创建多线程程序
最近在阅读Qt 5.9 C++开发指南,为了加深对书本上内容的理解,参照书上的讲解尝试写了一些demo,用于以后工作中查阅,如果涉及侵权请告知,实例程序samp13_1 mythread.h #ifn ...
- Linux每日一练20200220
- # vim ~/.vimrc vim配色
Ubuntu # vim ~/.vimrc # /hom/zzx 下 set nomodeline "(这个一定要写,目前有这个安全漏洞) set ...
- HTML隐藏
JS: $("#department").hide(); JSP: <th id="department" width="5%"> ...
- 如何在Swift的代码中使用OC的代码, 在OC的代码中使用Swift的代码?
https://www.cnblogs.com/upliver/p/5138160.html 如何在Swift的代码中使用OC的代码, 在OC的代码中使用Swift的代码? 随着苹果公司对Swift的 ...
- QSignalMapper is deprecated
今天参考 qt4 的书籍,在 qt5 的平台上面,用了 QSignalMapper,结果收到警告" QSignalMapper is deprecated". 经过一番查找,找到了 ...
- Linix CentOS6.5 下载安装图解(转)
CentOS 6.5系统镜像有32位和64位两个版本,生产服务器如果是大内存(4G以上内存) 建议安装64位版本CentOS-6.5-x86_64-bin-DVD1.iso 附:CentOS 6.5下 ...