C++期末速成与C++实验报告
文章平均质量分 88
C++程序设计基础知识学习与西南科技大学C++实验报告
Myon⁶
攻防这条路很长,未来如星辰大海般璀璨,不必踟躇于过去的半亩方塘,道阻且长,行则将至。
展开
-
西南科技大学C++程序设计实验七(继承与派生二)
在运行时,程序会根据对象的实际类型来调用相应的函数,实现不同类型的对象的操作。类的多态是面向对象编程中的一个重要特性,它指的是相同或者类似的操作可以作用于不同类型的对象上,并且会产生不同的行为。如果派生类B已经重载了基类A的一个成员函数fn1(),没有重载基类A的成员函数fn2(),如何在派生类的函数中调用基类的成员函数fn1(),fn2()总体来说,类的多态是一种灵活、高效的编程方式,可以提高代码的复用性、可读性和可维护性,是面向对象编程的重要特征之一。通过组合生成的类与被组合的类之间的逻辑关系是什么?原创 2023-12-06 11:26:41 · 1411 阅读 · 0 评论 -
西南科技大学C++程序设计实验八(多态一)
通过这种方式,调用基类的同一个方法时,如果调用的实际是子类的方法,而不是基类的方法,就产生了多态性。可以将一个父类指针指向一个子类对象,但不能子类指针能否指向父类对象,因为子类中有些信息父类没有,如果用子类指针访问的时候很可能访问到父类没有的一些属性及函数,会出错!(2)、在子类中重新定义此函数,要求函数名,函数类型、返回值类型,函数参数个数和类型全部与父类的虚函数相同,并要根据子类的需要重新定义函数功能。当一个派生类对象赋值给基类指针或引用的时候,该指针或引用将指向派生类对象中的虚函数表指针。原创 2023-12-07 10:33:17 · 1319 阅读 · 0 评论 -
西南科技大学C++程序设计实验十(函数模板与类模板)
类模板是一种特殊的模板,它可以让我们定义一个通用的类,其中某些成员变量或成员函数的数据类型不必指定,而是可以在使用该类时根据需要指定。在类模板的定义中,我们使用类型参数(例如template )来表示通用类型,这样可以让类模板适用于不同的数据类型。类型参数:动态数组的元素类型应该作为类模板的一个类型参数来表示,这样可以让我们在使用该类时根据需要指定元素类型。类型参数:链表节点的数据类型应该作为类模板的一个类型参数来表示,这样可以让我们在使用该类时根据需要指定元素类型。原创 2023-12-08 09:43:24 · 3317 阅读 · 0 评论 -
西南科技大学C++程序设计实验十二(文件流操作)
另外,需要注意文件流的打开模式,例如 ios::out 表示输出模式,如果需要读取文件则需要使用 ios::in 模式。需要注意的是,如果在程序结束前没有关闭文件,文件将会一直处于打开状态,这可能会导致文件被其他程序占用或者文件内容不完整等问题。打开文件有两种方式,一种是调用流对象的 open 成员函数打开文件,一种是定义文件流对象时,通过构造函数打开文件,请举例写出并说明。关闭文件可以通过流对象的 close() 成员函数实现,调用该函数后,流对象与打开的文件之间的关联将被解除,同时文件被关闭。原创 2023-12-09 15:52:48 · 1739 阅读 · 0 评论 -
西南科技大学C++程序设计实验四(类与对象三)
常成员函数是指在类中声明为const的成员函数,它们保证不会修改对象的状态,只能访问对象的常数据成员和非常成员函数。但是普通对象也可以访问常成员函数,在访问过程中,普通对象会被视为常对象,在运行过程中,普通对象的数据成员也不会被改变。常引用也可做形参,常引用可以和常对象搭配,普通对象也可以和常引用搭配,在运行中,普通对象会被视为常对象,常引用做函数形参时和值传递很类似,但常引用有一个优点,在传递比较大的值时,用值传递耗时较长,而传递常引用可以显著提高效率。常数据成员的初始化在构造函数的初始化列表中进行。原创 2023-12-05 10:29:23 · 1162 阅读 · 0 评论 -
西南科技大学C++程序设计实验九(多态二)
在这个类中,我们定义了一个名为on_pushButton_clicked的槽函数,并且在其中使用了QLineEdit控件的text方法和toInt方法,将文本框中输入的数字字符串转换成整型。通过纯虚函数,我们可以定义一个共同的接口,使得派生类能够根据需要来实现相应的功能。在主函数中,我们定义了两个Point对象p1和p3,并且分别进行前置和后置自增操作,并将操作结果赋值给新的对象p2和p4。2. 编写一个complex类,在类中重载运算符+,-,使其当做complex类的成员函数,完成复数的加,减。原创 2023-12-07 10:37:46 · 1423 阅读 · 0 评论 -
西南科技大学C++程序设计实验(大作业-电梯控制系统)
总结:本次课程设计使用C++面向对象的程序设计语言来实现对电梯运行的一个模拟,该楼共有10层,电梯初始状态停在1层,实现了电梯的上升和下降运行,实现了电梯开始运行时,显示所到的每一楼层层数,以及在电梯内部显示当前日期,还有对用户的非法输入做出相关提示与回应等功能。原创 2023-12-09 16:00:18 · 1364 阅读 · 0 评论 -
西南科技大学C++程序设计实验一(C++基础知识)
已知" a=1, b=2, c=3, d=4, m=1, n=1 ",编程完善程序,输出以下表达式的结果,回答程序注释部分的思考题!已知" a=1, b=2, c=3, m=1,n=1 ",编程完善程序,输出以下表达式的结果,回答程序注释部分的思考题!(4)输出为-2.“~”是按位取反,优先级大于“^”按位异或,~将b取反,^将取反的每一位与c每一位进行异或,若对应位相同,则为0,若对应位不相同,则为1.对于逻辑或,当第一个条件为假时,第二个条件会继续执行,c=3,d=4,所以c>d为假,n输出为0。原创 2023-11-27 21:52:58 · 1424 阅读 · 0 评论 -
西南科技大学C++程序设计实验三(类与对象二)
在对象复制给对象的过程中就要用到拷贝构造函数,到底是自己定义拷贝构造函数还是使用默认拷贝构造函数,这就要看看这个被拷贝的对象是否占有资源,如果占有资源,我们要把资源也复制一份给新对象,而不是把使用被拷贝对象使用资源的“权限”复制给新对象。如果没有复制构造函数,使用默认的复制构造函数,对象c3的str指针将指向与对象c2相同的地址,当c2和c3被销毁时,由于它们共享同一块内存空间,会导致错误的内存释放。被复制对象的所有变量都含有与原来对象相同的值,而所有其他对象的引用仍然指向原来的对象。原创 2023-12-02 10:27:41 · 1200 阅读 · 0 评论 -
西南科技大学C++程序设计实验五(类与对象深入学习 )
例如将类 B 声明为类 A 的友元类,那么类 B 中的所有成员函数都是类 A 的友元函数,可以访问类 A 的所有成员,包括 public、protected、private 属性的。而非成员函数,没有 this 指针,编译器不知道使用哪个对象的成员,要想明确这一点,就必须通过参数传递对象(可以直接传递对象,也可以传递对象指针或对象引用),并在访问成员时指明对象。对象数组的初始化调用其构造函数完成,不可以不加类名,因为类的构造方法具有参数的格式,如果不加类名,参数的传递会出问题。原创 2023-12-05 10:34:02 · 1411 阅读 · 0 评论 -
西南科技大学C++程序设计实验六( 继承与派生一)
1、执行基类的构造函数。2、执行成员对象的构造函数(如果有的话)。不可以直接访问,因为无论用何种方式继承,从基类继承过来的私有数据成员都是不可访问的,只有基类本身可以访问其私有成员,但是可以通过在基类中提供访问函数来进行访问。公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然为私有的,不能被这个派生类的子类所访问。公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然为私有的,不能被这个派生类的子类所访问。原创 2023-12-06 11:19:21 · 1249 阅读 · 0 评论 -
西南科技大学C++程序设计实验十一(泛型程序设计与C++标准模板库)
容器(Containers):STL提供了多种容器,如vector、list、map、set等,它们是存储数据对象的数据结构,在内存中以链表、数组、树等方式进行存储,支持增删改查等操作。总之,vector作为一个顺序容器,在C++程序设计中广泛应用,其动态分配内存、支持随机访问、元素连续存储、支持动态增减元素和迭代器支持等特点,使其成为一个高效、方便、易于使用的容器。5.迭代器支持:vector支持迭代器,可以使用迭代器访问其中的元素,也可以使用STL中提供的各种算法对vector中的元素进行操作。原创 2023-12-08 09:51:17 · 1530 阅读 · 0 评论 -
西南科技大学C++程序设计实验二(类与对象一)
(1)在主函数中使用Rectangle定义一个目的对象rec_1,调用构造函数初始化其数据成员length与breadth的值分别为2和3,使用成员函数output()输出其数据成员的值,使用成员函数area()计算对象rec_1的面积;(2)在主函数中使用Rectangle定义一个目的对象rec_2,通过set()函数对其数据成员重新赋值,并使用area()函数计算输出其面积,思考可否重新调用构造函数完成上述set()函数的功能?重点:掌握类的定义与实现,丰富类的数据成员与成员函数,拓展其功能。原创 2023-11-28 22:46:53 · 1476 阅读 · 0 评论 -
C++ 面向对象特征4 多态(Polymorphism)
1、对多态的理解2、实现多态的例子3、多态的意义4、静态联编与动态联编原创 2023-05-10 19:52:27 · 711 阅读 · 0 评论 -
C++ 类的继承与派生
1、继承的概念2、继承(Inherit)3、继承方式4、父子同名成员并存5、虚函数(virtual)6、纯虚函数原创 2023-05-09 00:22:37 · 711 阅读 · 0 评论 -
从面向过程到面向对象
1、抽象2、UML类图3、类定义4、类成员函数(1)构造函数(constructor)(2)析构函数(destructor)5、对象实现6、封装7、getter、setter方法原创 2023-05-07 00:23:07 · 589 阅读 · 0 评论 -
C++函数必备简单知识
1、函数的定义与声明(1)定义(2)声明2、指针传参3、引用4、函数的引用传参5、函数重载 overlord(1)参数数量不同(2)参数类型不同6、避免overlord歧义7、内联函数inline8、其他总结(1)默认参数应放在形参列表最后面,设置参数默认值时应从右向左(2)除函数形参外,其他引用定义时必须赋初始值(3)函数重载目的(4)函数体语句较多时不适合声明为内联函数原创 2023-05-06 00:56:47 · 646 阅读 · 0 评论 -
从C到C++
1、输入输出库与名字空间2、输入输出流对象cin和cout3、string字符串类4、bool类型5、自增++自减--运算符(必考)6、其他原创 2023-05-05 13:30:36 · 1016 阅读 · 0 评论 -
C++程序设计—类与对象
1、类和对象的概念2、面向对象程序设计的特点3、类和对象的区别4、成员运行算符(1)(.)点运算符(2)(->)箭头运算符5、类的声明形式(1)public(2)private(3)protected6、成员函数调用中的目的对象原创 2023-04-20 21:47:11 · 845 阅读 · 0 评论 -
C++程序设计函数部分(定义+实例)
1、内联函数2、默认形参值函数3、重载函数4、系统函数原创 2023-04-13 21:04:47 · 1003 阅读 · 0 评论 -
初学C++,坚决不能挂!
如果你上理论课也听不懂老师在讲什么不如现在开始自学一些吧期末再看看速成课一定可以过的Good Luck!原创 2023-04-12 23:04:29 · 745 阅读 · 0 评论