![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 89
demon % !
这个作者很懒,什么都没留下…
展开
-
C++(第五天----多继承、虚继承、虚函数、虚表)
构造函数调用顺序,先调用父类,再调用子类注意:1、子类调用成员函数的时候会检测该成员函数在子类中是否存在,如果存在就调用自己的, 如果不存在就调用 父类的(前提是父类要有这个函数)2、如果子类和父类存在同名函数,那么在子类中 父类的函数成员会被隐藏,默认调用的就是子类函数成员。如果要调用父类的函数成员必须添加类名和作用域。练习1:设计一个基类动物类(属性:体重,颜色,年龄 行为:跑,吃,睡),构造方法初始化属性。原创 2024-07-05 15:10:48 · 944 阅读 · 0 评论 -
C++(第四天----拷贝函数、类的组合、类的继承)
1、概念拷贝构造函数,它只有一个参数,参数类型是本类的引用。如果类的设计者不写拷贝构造函数,编译器就会自动生成拷贝构造函数。大多数情况下,其作用是实现从源对象到目标对象逐个字节的复制,让目标对象的每个成员变量都变得和源对象相等。编译器自动生成的拷贝构造函数称为“默认拷贝构造函数”。2、格式3、例子constvoidconstvoid4、什么时候需要自己定义拷贝构造函数当类的数据成员中 有指针成员的时候,需要申请内存空间5、什么时候会调用到拷贝构造函数。原创 2024-07-04 14:47:41 · 1008 阅读 · 0 评论 -
C++(第三天----类的内存空间,构造,初始化列表,析构,this指针,指针的动态内存)
1、类本身是一种数据类型,在没有定义对象前是不占用内存空间的,定义对象的时候才会分配 空间2、计算一个类的对象占用多少空间用sizeof(类名或对象)1)类的内存空间大小是其数据成员(非静态-数据段)和虚表大小有关,跟函数成员无关2)如果一个类中没有数据成员(空类),也没有虚表那么这个类的大小规定为1个字节3、为什么空类的大小为1个字节实际上,这是类结构体实例化的原因,空的类或结构体同样可以被实例化。原创 2024-07-03 17:09:49 · 489 阅读 · 0 评论 -
C++ (第二天下午---面向对象之类与对象)
1、面向过程面向过程是一种以事件为中心的编程思想,编程的时候把解决问题的步骤分析出来,然后用函数把这些步骤实现,在一步一步的具体步骤中再按顺序调用函数。可见,面向过程始终关注的是怎么一步一步地判断棋局输赢的,通过控制代码,从而实现函数的顺序执行。2、面向对象(OOP)在日常生活或编程中,简单的问题可以用面向过程的思路来解决,直接有效,但是当问题的规模变得更大时,用面向过程的思想是远远不够的。所以慢慢就出现了面向对象的编程思想。原创 2024-07-02 16:39:17 · 803 阅读 · 0 评论 -
C++ (第二天上午---函数重载和缺省参数和占位参数)
1、问题的引入在实际开发中,有时候我们需要实现几个功能类似的函数,只是有些细节不同。例如希望交换两个变量的值,这两个变量有多种类型,可以是 int、float、char、bool 等,我们需要通过参数把变量的地址传入函数内部。那么在C++中,有没有一种方法,允许多个函数拥有相同的名字,只要它们的参数列表不同就可以呢。答案:使用函数重载。2、概念用相同的函数名定义多个不同的功能称为函数重载。重载的函数根据参数的个数和类型进行区分,但不能单独根据返回类型进行区分。3、例子。原创 2024-07-02 13:45:33 · 438 阅读 · 0 评论 -
C++(第一天-----命名空间和引用)
1、与C相比c语言面向过程,c++面向对象。c++能够对函数进行重载,可使同名的函数功能变得更加强大。c++引入了名字空间,可以使定义的变量名更多。c++可以使用引用传参,引用传参比起指针传参更加快,指针传参还需要传送,而引用传参不需要传送参数,就能使函数共用一个变量。c++使用了类,能够继承,继承使得定义相似的类时能够直接从上一层得到一些方法或变量来进行直接使用。原创 2024-07-01 15:12:48 · 954 阅读 · 0 评论