- 博客(52)
- 收藏
- 关注
原创 文件的判断和选择题
选项 D 是错误的,因为std::cout是标准输出流,不是文件流对象,不能使用open()函数来打开文件。因此,错误的表达式是:D.以下关于文件操作的叙述中,不正确的是:A.打开文件的目的是使文件对象与磁盘文件建立联系B.文件读写过程中,程序将直接与磁盘文件进行数据交换C.关闭文件的目的之一是保证将输出的数据写入硬盘文件D.关闭文件的目的之一是释放内存中的文件对象以下关于文件操作的叙述中,不正确的是:B. 文件读写过程中,程序将直接与磁盘文件进行数据交换。
2024-06-13 22:36:42
797
原创 模板与异常
通过使用模板,可以编写通用的代码,适用于多种数据类型,而不需要为每种类型分别编写代码。A.处理不了的异常,可以通过在catch结构中调用throw重新抛出异常,将当前异常传递到外部的try-catch结构中。C.在对函数进行异常规范声明时,若形参表后没有任何表示抛出异常类型的说明,它表示该函数不能抛出任何异常。B.catch语句块必须跟在try语句块的后面,一个try语句块后可以有多个catch语句块。A.异常处理的throw与catch通常不在同一个函数中,实现异常检测与异常处理的分离。
2024-06-13 21:53:40
657
原创 运算符重载
这些运算符之所以不能被重载,主要是因为它们在C++语言中有固定的语义和用途,重载后可能会导致运算符意义的混淆或破坏语言的原有设计。,而不能被重载为类的友元函数或全局函数。这是因为赋值运算符需要直接访问类的私有和受保护成员,以便能够正确地执行赋值操作。是的,运算符重载函数通常必须声明为类的成员函数,特别是当它们需要访问类的私有成员时。重载运算符()、[]、->或者=赋值运算符,运算符重载函数必须声明为类的成员函数。赋值运算符“ =”只能重载为成员函数。只能被重载为类的成员函数。
2024-06-13 21:15:21
153
原创 继承的选择题
B. 只能被该类的成员函数和友元函数访问在公有继承的情况下,在派生类中能够访问的基类成员包括A.公有成员B.保护成员C.公有成员、保护成员和私有成员D.公有成员和保护成员D. 公有成员和保护成员在公有继承的情况下,派生类可以访问基类的公有成员和保护成员,而不能直接访问基类的私有成员。D. 公有成员和保护成员在c++中,类之间的继承关系具有( )。A.自反性B.对称性C.传递性D.反对称性C. 传递性在C++中,类之间的继承关系具有传递性。
2024-06-11 23:17:33
488
原创 友元和静态成员
静态成员变量的访问控制权限没有意义,静态成员变量均作为公有成员使用。(X)这句话是不正确的。静态成员变量的访问控制权限在C++中是有意义的,并且它们可以被声明为 、 或 ,就像非静态成员变量一样。友元函数不是类的成员函数,只是独立于该类的一般函数。 (√)是的,这句话是正确的。友元函数(friend function)不是类的成员函数,而是独立于该类的普通函数。但友元函数可以访问该类的私有和受保护成员。友元函数的定义:友元函数的特点:如果A是B的友元类,那么B的成员函数可以访问A的私有成员 (×)在C++中
2024-06-11 22:42:04
535
原创 类和对象选择题
对象p(2个对象):2次析构函数调用对象p2:0次析构函数调用(因为没有delete p2对象a:1次析构函数调用3次因此,正确答案是:C. 3以下对类A的定义,哪个是正确的?C.D.A.这个选项几乎是正确的,但少了一个分号;来结束类定义C.最后一行的定义是错误的,因为void是返回类型,应该在作用域运算符之前,而不是之后。D.这个选项是错误的。类A包含一个类型为A的成员next,这是不合法的,因为这会导致无限递归定义。应改为指向Aclass A {int v;
2024-06-11 18:49:00
980
原创 6-4 使用类计算矩形的面积
public://设置矩形的长度//设置矩形的宽度//计算并返回矩形的面积private://矩形的长度和宽度请实现Rectangle类的成员函数。
2024-06-10 23:24:51
164
原创 7-5 例4-3游泳池改造预算
在当前设计中,zljg()和gdjg()不需要形参,因为它们使用的是对象的成员变量r。如果希望计算不同半径的造价,可以将半径作为参数传递给这些函数,这样它们就需要形参。这种设计选择主要取决于具体需求和设计的灵活性。
2024-06-10 16:47:00
1594
原创 7-3 通过指针,输出对象数组的数据
设计一个类,主函数中建立一个对象数组,输入5个学生数据(学号、成绩),用对象指针指向数组首元素,输出5个学生的数据。
2024-06-10 14:30:08
890
原创 7-2 定义一个时间类Time
本题目要求定义一个类Time,实现相关的成员函数的定义:class Timeprivate:int days;int hours;public:在main()函数中从键盘读入6个整数值分别为2个类Time对象赋值,然后输出2个Time对象的和。
2024-06-10 13:16:20
484
原创 7-1 重载大于号运算符,比较复数大小
本题目要求编写代码的功能为:输入两个复数(变量名自拟),比较复数模的大小,复数实部与虚部都是整数要求输入时输入4个整数,分别代表复数1的实部、虚部,复数2的实部虚部。
2024-06-10 02:10:25
231
原创 【无标题】
在这里描述类定义/* 请在这里填写答案 */cout<<c1;cout<<c2;c3=c1+c2;cout<<c3;c4=c1-c2;cout<<c4;return 0;imag=i;return is;return os;在C++中,运算符重载函数的参数类型和个数必须符合运算符的语法规则。对于流插入运算符 (<<) 和流提取运算符 (>>
2024-06-08 16:35:12
214
原创 6-1 单目运算符重载(时钟类)
6-1 单目运算符重载(时钟类)分数 10作者 傅尔胜单位 郑州航空工业管理学院本题已给出时钟类及其成员函数实现,要求补充完整运算符++重载函数(前置和后置),使之能够实现时钟对象自增1秒。裁判测试程序样例:输入样例:在这里给出一组输入。例如:输出样例:在这里给出相应的输出。例如:代码长度限制16 KB时间限制400 ms内存限制64 MB要注意这里的返回类型都是“Clock"所以代码是:而不是: 函数声明和定义必须一致:
2024-06-08 15:02:15
164
原创 6-5 虚基类的应用-人与教师学生
/定义公共基类Person{public:{name=nam;sex=s;age=a;int age;//定义类Teacher{public:{title=t;protected://定义类Student{public:protected:/*这里添加派生类的定义*/在虚拟继承的情况下,基类的构造函数必须在最终派生类的初始化列表中直接显式调用,以确保虚拟基类只被构造一次。这个过程由最终派生类负责,而不是中间的派生类。
2024-06-06 21:41:09
274
原创 7-1 计算全班学生C++课程的总成绩和平均成绩
7-1 计算全班学生C++课程的总成绩和平均成绩分数 100作者 杨雪华单位 沈阳师范大学定义一个类Student,记录学生C++课程的成绩。要求使用静态数据成员或静态成员函数计算全班学生C++课程的总成绩和平均成绩。输入格式:输入5个不超过100的正整数,作为C++成绩。输出格式:在第一行中输出成绩的和,第二行输出平均成绩。输入样例:90 80 70 60 50输出样例:35070代码长度限制16 KB时间限制400 ms内存限
2024-06-05 15:25:07
204
原创 7-2 设计一个People类
7-2 设计一个People类分数 50作者 郭研单位 浙江大学设计一个People 类,该类的数据成员有姓名、年龄、身高、体重和人数,其中人数为静态数据成员,成员函数有构造函数、显示和显示人数。其中构造函数由参数姓名、年龄、身高和体重来构造对象;显示函数用于显示人的姓名、年龄、身高和体重;显示人数函数为静态成员函数,用于显示总的人数。
2024-06-05 15:24:18
145
原创 6-5 错误的十进制整数 - 《C++编程基础及应用》- 习题21-1
6-5 错误的十进制整数 - 《C++编程基础及应用》- 习题21-1分数 15作者 海洋饼干叔叔单位 重庆大学函数toInteger()负责把一个字符串,比如“-719”转换成整数。当函数发现字符串不符合十进制整数的格式要求,比如包含了非数字母,则应放弃转换并抛出一个异常。请实现该函数,使得下述代码能正常运行:当输入为一个合法整数时,转换并打印该整数;当输入为不合法整数时,打印错误信息。错误信息应为:函数接口定义:输入样例:输出样例:错误的整数格式举例:
2024-05-28 17:57:44
1936
原创 7-1 定义类模板实现2个数的算术运算
7-1 定义类模板实现2个数的算术运算分数 100作者 孙杰单位 青岛大学本题目要求定义类模板实现2个数的最大值、最小值、加、减、乘、除等算术运算,在main()函数中使用该类模板分别实例化为int型和double型的类,定义相关的对象,读入2个整数和2个浮点数,然后分别输出它们的最大值、最小值、加、减、乘、除的结果。
2024-05-26 15:23:05
352
原创 普通函数与函数模板的调用规则
如果函数模板和普通函数都可以实现,优先调用普通函数。如果函数模板可以产生更好的匹配,优先调用函数模板。可以通过空模板参数列表来强制强调函数模板。函数模板也可以发生重载。
2024-05-25 20:13:22
208
原创 普通函数与函数模板区别
总结:建议使用显示指定类型的方式,调用函数模板,因为可以自动确定通用类型T。函数模板 用自动类型推导,不可以发生隐式类型转换。函数模板 用显示指定类型,可以发生影视类型转换。普通函数调用可以发生隐式类型转化换。c是字符型隐式地转换成了整形。站黑马程序员学习笔记。
2024-05-25 19:49:03
156
原创 函数模板案例
利用函数模板封装一个排序函数,可以对不同数据类型数组进行排序。分别利用char数组和int数组进行测试。排序规则从大到小,排序算法为选择排序。
2024-05-25 19:29:04
150
原创 模板的概念及函数模板
使用函数模板有两种方式:自动类型推导、显示指定类型。模板的目的是为了提高复用性,将类型参数化。模板就是建立通用的模具,大大提高复用性。函数模板利用关键字template。以上来自于黑马程序员视频的学习记录。模板的通用并不是万能的。
2024-05-25 18:42:53
126
原创 静态成员
静态成员就是在成员变量和成员函数前加关键字static,成为静态成员。静态成员变量不属于某个对象上,所有对象都共享同一份数据。影刺静态成员变量有两种访问方式。//1、通过对象访问。//2、通过类名访问。所有对象共享同一份数据。所有对象共享同一个函数。
2024-05-23 22:17:28
120
1
原创 7-3 通过指针,输出对象数组的数据
7-3 通过指针,输出对象数组的数据分数 100作者 杨雪华单位 沈阳师范大学设计一个类,主函数中建立一个对象数组,输入5个学生数据(学号、成绩),用对象指针指向数组首元素,输出5个学生的数据。
2024-05-21 17:33:18
376
1
原创 7-2 定义一个时间类Time
本题目要求定义一个类Time,实现相关的成员函数的定义:class Timeprivate:int days;int hours;public:在main()函数中从键盘读入6个整数值分别为2个类Time对象赋值,然后输出2个Time对象的和。
2024-05-19 21:13:17
402
1
原创 this 指针概念
p1在调,所以this指向的是p1,如果有p2,this指向p2,有p3,this指向p3.Person p1(18);调用了有参构造函数,相当于this指针指向的是被调用了的成员函数所属的对象。谁调用有参构造,this就指向谁。用途一:指向名称冲突。
2024-05-19 19:56:23
115
1
原创 引用的本质
自动转化为 int * const ref = &a;指针常量是指针指向不可以修改,指向的值可以修改;引用的本质在c++内部实现是一个指针常量。
2024-05-19 16:15:09
62
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人