自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 C++ primer plus课后练习题

2. r1(w+1)合法,会产生一个临时变量;r1(up(w))合法,会产生一个临时变量;r2(w+1)和r2(up(w))都不对,因为w+1和up(w)的返回值均为右值。r3(w)不对,因为w是一个左值,应该调用r1或者r2。4. 默认构造函数,复制构造函数,赋值构造函数,析构函数,移动复制构造函数,移动赋值构造函数;特殊在如果你不提供上述方法,编译器会默认提供。5. 将double数组改为一个指针。第十八章:探讨C++新标准。

2023-04-20 12:30:29 96

原创 C++ primer plus课后练习题

9. 在字符超过80个且其中没有‘\n'时,第一条语句清空所有的字符,但第二条语句只能清空前80个字符。2. 因为系统只会读入字符,要想读入数字,需要将若干个字符转换为单个数字。1. iostream文件构建了控制台与程序之间的I/O。5.

2023-04-19 15:38:59 69

原创 C++ primer plus课后练习题

这两个vector 函数和 random shuffle()函数要求随机访问迭代器,而list 对象只有双向迭代器。可以使用 list 模板类的 sort()成员函数,而不是通用两数来排序,但没有random_shuffe()等效的成员两数。然而,可以将链表复制到矢量中,然后打乱矢量,并将结果重新复制到链表中。11.创建了一个成员变量值为10的TooBig对象,调用了其opreator()函数,传递参数15进入函数,返回结果10 < 15,故bo是true。8. 避免编写重复的代码,提高代码的复用性。

2023-04-18 16:12:40 75

原创 C++ primer plus课后练习题

为使类A拥有一个本身为类B的成员函数的友元,B的声明必须位于 A 的声明之前。同样,如果B拥有一个本身是A 的成员函数的友元,则A 的这个声明必须位于B的声明之前。6. 第一个实例中,可以调用superb中的say方法以及superb派生类magnificent中的say方法。7. static_cast运算符能在类层次中进行向上或向下的转换,但dynamic_cast运算符仅能进行向上的转换。4. return会依次回调先前调用该函数的函数,但throw会跳转到相应的含有try块的调用函数中进行处理。

2023-04-16 21:27:06 137

原创 C++ primer plus 课后练习题

6. 虚基类的派生类只会从虚途径中继承一个虚基类对象,而非虚基类的派生类会从多个继承途径继承多个基类对象;此外,虚基类的派生类的接口在定义时语法与非基类的派生类有所不同。1. a. 公有派生;第十四章:C++中的代码继承。

2023-04-14 21:04:34 148

原创 C++ primer plus 课后练习题

由于形参是基类对象,因此将调用基类的复制构造函数。最终结果是,将生成一个新的基类对象,其成员对应于派生对象的基类部分。其次,House 中的area()定义隐藏了 area()的 Kitchen 版本,因为这两个方法的特征标不同。4. 构造派生类时,先调用基类的构造函数,在调用派生类的构造函数;删除派生类时,先调用派生类的析构函数,在调用基类的析构函数。12.因为按值传递对象会拷贝出一份对象的副本,这增加了额外的开销。10.因为基类的指针或引用可以指向或引用派生类的对象。6. 调用派生类的方法。

2023-04-12 20:53:45 62

原创 C++ primer plus 课后练习题

第三,在重载

2023-04-03 14:32:38 237

原创 C++ primer plus 课后练习题

如果类成员均为public,则不使用友员函数也能访问类成员。2. 友员函数并不是成员函数,因此不能使用对象通过.运算符来使用友员函数。6. 只能在成员函数中重载他们。

2023-03-31 11:32:01 193

原创 C++ primer plus 课后练习题

类是用户定义的类型的定义.类声明指定了数据将如何存储,同时指定了用来访问和操作这些数据的方法(类成员函数).类的数据成员可以是私有的,这意味着只能通过成员函数来进行访问这些数据,这是数据隐藏。如果创建给定类的多个对象,则每个对象都有其自己的数据内存空间,但所有的对象都使用同一组成员函数.8. 默认构造函数是不含形参的构造函数,或提供默认值的含形参的构造函数.类表示人们可以通过类方法的公有接口对类对象执行的操作,这是抽象.实现的具体细节(如数据表示和方法的代码)都是隐藏的,这是封装.

2023-03-29 11:45:43 186

原创 C++ primer plus 课后练习题

2. using声明只能声明一个变量的名称空间,且当函数中有相同名称的变量存在时,会产生冲突;而using编译指令能声明一整个名称空间中的变量,且当函数中有相同名称的变量时,局部变量会覆盖掉名称空间中的变量.5. 将两个函数写在不同的名称空间中,在不同的文件调用时使用不同的名称空间即可.在一个文件中将其定义为外部变量,并在第二个文件中使用extern来声明它。c. 静态全局变量,也可以在一个未命名的名称空间中进行定义。1. a. 局部变量。在每个文件中包含单独的静态函数定义。(将自动成为自动变量)

2023-03-28 13:02:14 46

原创 C++ primer plus 课后练习题

必须从左往右添加默认值!可以: void song(char* name = "O, My Papa", int times = 1);1. 调用时间远远长于运行时间的函数。(只有一行代码的小型、非递归函数适合作为内联函数)d. 两种方法都无法完成。6. a. 默认参数。

2023-03-25 15:53:53 59

原创 C++ primer plus 课后练习题

传址的效率更高,但同时会带来修改原结构的风险。6. 因为函数参数为基本类型时,函数中形参的修改并不会影响实参,所以const在此时并无太大意义。1. 第一,声明函数原型;一个存放两个字符指针的数组。第七章:函数——C++的编程模块。

2023-03-23 16:11:44 88

原创 C++ primer plus 课后练习题

x)并将其结果转化为布尔值,若x原先不为0,那么(!x)的结果为false(0),再取反后为true(1),一般情况下与原先的x不相等。1. 减少代码的运行次数,提升其效率的同时,增强了代码的可读性。2. 将把字符的ascii码加一后以数字的形式输出。8. 不会产生cin的读取错误,能使程序更稳定。第六章:分支语句和逻辑运算符。

2023-03-22 16:24:42 113

原创 C++ primer plus 课后练习题

1. 入口条件循环在循环开始前判断条件,出口条件循环在循环结束后判断条件;for、while循环属于入口条件循环,do-while循环属于出口条件循环。(024是8进制下的24,转换为10进制为20)20。9. 第一条语句会跳过空格和换行符和。7. 用花括号将多条语句一起括起来。,其他两种格式将读取这些字符。第五章:循环和关系表达式。

2023-03-21 18:14:14 99

原创 C++ primer plus 课后练习题

使用cin >> address 将使得程序跳过空白,直到找到非空白字符为止。14.他会输出该字符串首字母“H”的地址。字输入后的换行符,从而避免这种问题。

2023-03-20 20:39:35 398

原创 C++ primer plus 课后练习题

2. 将88进行强制类型转化,即(char) 88 , 再将其打印输出。6. 1. 定义一个char类型的变量并将其赋值为88,随后打印该变量。4.(注:题目要求使用long类型存储变量second)4. 33L的类型是long,而33的类型是int。5. 只在某些情况下等价(只有在使用ASCII码的系统上)3. C++没有提供自动防止超出整形限制的功能。1. 为了存储不同大小的整数。7. 他们都会导致误差。(准确的说,取决于这两个类型的长度)可以根据需求选择最合适的类型。

2023-03-17 18:39:48 81

原创 C++ primer plus: 关于float类型只能存储6位有效数字的思考

在阅读C++ primer的过程中,书中提到:事实上,C和C++对于有效位数的要求是,float 至少32 位,double至少48位,且不少于foat,longdouble , 至少和double 一样多。这三种类型的有效位数可以一样多。但是,随后,其又指出:由于cout打印6位小数,因此tub和mint都是精确的。但当程序将每个数乘以一百万后,tub在第7个3之后就与正确的值有了误差。tub 在7位有效位上还是精确的(该系统确保float至少有6位有效位,但这是最糟糕的情况)。

2023-03-16 23:19:26 1389 1

原创 C++ primer plus 课后练习题

11.可能未包含头文件;可能未使用编译指令;3. 编译指令 用来确定对象的命名空间。9. 返回类型 函数名 函数参数。10. 返回类型为void时。可能未声明对象的空间(std::)C++程序的模块叫 函数。第二章:开始学习C++2. 用来包含头文件。

2023-03-15 15:11:41 280 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除