![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++编程
田野麦子
这个作者很懒,什么都没留下…
展开
-
C++打印菱形相关图形
1.打印 * 型菱形/*------------------------功能:打印*菱形运行结果为: * *** ************ ***** *** *--------------------------Author: Zhang KaizhouDate: 2019-3-26 16:54:17-------------------------*/...原创 2019-03-26 17:38:26 · 8663 阅读 · 1 评论 -
C++函数模板
注意:函数模板主要用于解决对不同类型的数据进行相似操作时函数重载问题。示例1:/*-----------------------功能:函数模板运行结果:33.14-------------------------Author: Zhang KaizhouDate: 2019-4-14 10:29:36------------------------*/#include &l...原创 2019-04-14 10:33:45 · 1156 阅读 · 0 评论 -
C++动态数组类模板
/*------------------------功能:实现动态数组类模板示例运行结果:1 2 3 4 5 6 7 8 9 01 2 3 4 5 6 7 8 9 0--------------------------Author: Zhang KaizhouDate: 2019-4-21 17:19:00-------------------------*/#include &...原创 2019-04-21 17:15:05 · 4195 阅读 · 1 评论 -
C++中将运算符重载为全局函数
注意:1.将运算符重载为全局函数时,形参中至少要有一个为自定义的数据类型,即不能全为基本数据类型;2.注意运用friend关键字可将非成员函数定义为某个类的友元,此时,该函数便可访问该类的私有成员变量了。/*---------------------------------------功能:将运算符重载为全局函数(非成员函数)运行结果:c1 = (2, 3)c2 = (4, 5)c...原创 2019-04-10 08:46:04 · 3964 阅读 · 0 评论 -
C++中的抽象类
注意:1.抽象类主要是使得整个类家族拥有相同的接口,便于对整个类的对象做批处理操作;2.因为抽象类中包含纯虚函数,所以抽象类不能实例化出对象。/*----------------------------功能:抽象类的定义与实现运行结果:Calling Base2::display()...Calling Derived::display()...------------------...原创 2019-04-13 11:11:40 · 880 阅读 · 0 评论 -
C++中将双目运算符重载为类的成员函数
/*--------------------------------功能:双目运算符重载为类的成员函数运行结果:2+3i4+5i6+8i-2-2i----------------------------------Author: Zhang KaizhouDate: 2019-4-9 17:55:03--------------------------------*/#inc...原创 2019-04-09 18:39:54 · 1865 阅读 · 0 评论 -
C++中将单目运算符重载为类的成员函数
注意:注意运算符重载时的函数声明形式以及返回值的类型。/*---------------------------------功能:单目运算符重载为类的成员函数运行结果:23:59:5923:59:590:0:00:0:1-----------------------------------Author: Zhang KaizhouDate: 2019-4-9 18:23:24...原创 2019-04-09 18:37:21 · 2219 阅读 · 0 评论 -
C++用虚基类来避免成员变量或成员方法调用的二义性问题
注意:若在继承时不将Vehicle类声明为虚基类,则在对象mc调用Vehicle类中的成员变量或成员方法时就会产生二义性。因为编译器不知道该成员变量或成员方法是来自Bicycle类还是来自Motorcar类。/*-----------------------------------------------------功能:用虚基类来避免成员函数或成员方法调用的二义性问题运行结果:601...原创 2019-04-09 16:41:21 · 750 阅读 · 0 评论 -
C++中vector的用法
1.vector的基本用法/*----------------------------------功能:vector的用法输入示例:Input the number of data: 3Input your data: 1.2 3.4 6.8输出示例:The average of numbers in arr = 3.8-------------------------------...原创 2019-04-03 11:41:45 · 294 阅读 · 0 评论 -
C/C++函数指针和函数指针数组的定义及用法
/*-------------------------------------------------------功能:探究函数指针和函数指针数组的定义及用法输入示例:Input 2 numbers & 1 operator(0-max, 1-min, 2-sum): 1 9 2输出示例:10-------------------------------------------...原创 2019-04-03 10:19:45 · 4289 阅读 · 0 评论 -
C++以面向对象的思维来解决问题
主要内容:分别创建CPU类、RAM类、CDROM类,然后以这三个类的对象为成员变量创建Computer类,最后调用Computer类中的run()和stop()成员方法,探究组合类中对象的构造以及析构的过程。/*------------------------------------------功能:以面向对象的思维来解决问题探究组合类中对象的构造和析构的过程运行结果:Generate...原创 2019-04-01 14:13:28 · 379 阅读 · 0 评论 -
C++中的移动构造函数
核心:移动构造的主要方式是在构造函数中直接复制原临时对象的指针,即新的对象与原对象指向同一块内存单元,实际上是浅层复制。然后将原临时对象的指针置为空指针,此时就避免了多个指针指向同一块内存空间带来的风险。/*----------------------功能:移动构造函数运行结果:Calling constructor...0Calling destructor...Author: ...原创 2019-04-05 18:35:07 · 1448 阅读 · 0 评论 -
C++中虚函数实现函数与对象的动态绑定
注意:1.虚函数的声明使用virtual关键字;2.虚函数一般不定义为inline函数,因为虚函数的作用是实现函数运行时的多态性,而inline函数则是在编译阶段就要实现函数与类的静态绑定,二者相矛盾。/*---------------------------------------功能:使用虚函数实现对象与函数的动态绑定运行结果:Base1::display()...Base2::...原创 2019-04-10 12:11:22 · 506 阅读 · 0 评论 -
C++实现一个最基本的类
1.将类的成员函数的声明与实现分开来写;这中写法会使得程序更加清晰,但是此时对成员函数的调用要经过函数压栈操作,对于短的代码段来说,执行效率会比较低。/*---------------------------------------功能:定义一个CPU类,并实现其相关功能运行结果:Calling argument constructor of CPU...The CPU is runni...原创 2019-03-31 17:05:24 · 419 阅读 · 0 评论 -
C++中组合类的构造函数相关问题
主要目的:本代码主要目的在于探究在组合类中创建以及初始化对象时,各个类的构造函数的调用情况。/*------------------------------------------------------------------------功能:探究组合类中构造函数的相关问题运行结果:Calling the argument constructor of point... // 对应92...原创 2019-03-31 14:46:36 · 1288 阅读 · 1 评论 -
C++中对象的深层复制
深层复制与浅层复制最主要的区别在于:1.浅层复制只是对指针的复制,两个对象中的指针实际上指向同一块内存区域,所以改变其中任意一个的值,都会对另一个产生影响;2.深层复制是对元素值的复制,复制构造函数会重新申请一块大小合适的内存空间来存储原来元素的值,所以深层复制后的对象与原对象之间并无关联关系。/*---------------------------------------功能:对象的深...原创 2019-04-04 18:04:49 · 1204 阅读 · 0 评论 -
C++动态数组的创建及应用
/*---------------------------------------功能:动态数组的创建和应用运行结果:Input the number of point: 2Calling default constructor of Point...Calling default constructor of Point...Calling constructor of ArrayP...原创 2019-04-04 17:23:08 · 5970 阅读 · 0 评论 -
C++类模板
注意:注意类模板定义及实现的格式。/*------------------------功能:类模板的定义与实现运行结果:3, -101308040212, 99.8--------------------------Author: Zhang KaizhouDate: 2019-4-17 16:58:15-------------------------*/#include ...原创 2019-04-17 16:58:31 · 144 阅读 · 0 评论