c++
文章平均质量分 82
sakura0908
未来的一个小小码农
展开
-
C++ primer plus第十五章编程练习答案
3.这个练习与编程练习2相同,但异常类是从一个这样的基类派生而来的:它是从 logic_crror 派生而来的,并存储两个参数值。程序使用一个 catch块来捕获基类异常,其中任何一种从该基类异常派生而来的异常都将导致循环结束。2.修改程序清单 15.11,使两种异常类型都是从头文件stdexcepi>提供的 logic_error 类派生出来的类让每个 what()方法都报告函数名和问题的性质。d.在T类中添加一个对 Remote 中新成员进行切换的方法,该方法应仅当 TV 处于打开状态时才能运行。原创 2023-09-07 14:21:04 · 295 阅读 · 0 评论 -
C++ primer plus第十四章编程练习答案
它包含一个Draw( )成员该函数返回一个1~52的随机数,用于表示扑克牌的值(也可以定义一个 Card 类,其中包含花色和面值成员,然后让 Draw( )返回一个Card对象)。1.Wine 类有一个string 类对象成员(参见第4章)和一个Pair 对象(参见本章)其中前者用于存储葡酒的名称而后者有2个valarray原创 2023-09-07 11:58:03 · 342 阅读 · 0 评论 -
C++ Primer Plus第十三章编程练习答案
3.修改baseDMA-lacksDMA-hasDMA类层次,让三个类都从一个ABC派生而来,然后使用与程序清单13.10 相似的程序对结果进行测试。派生出一个Classic 类,并添加一组 har 成员,用于存储指出CD 中主要作品的字符串。operator原创 2023-09-07 10:23:29 · 337 阅读 · 0 评论 -
C++ primer plus第十二章编程练习答案
然后再找出要使平均等候时间为1分钟,每小时到达的客户数应该为多少(注意,这是一个非线性问题,即将ATM数量加倍,并不能保证每小时处理的客户数量也翻倍,并确保客户等候的时间少于1 分钟)?5.Heather 银行进行的研究表明,ATM 客户不希望排队时间不超过1分钟使用程序清单1210中的模拟,找出要使平均等候时间为1分钟,每小时到达的客户数应为多少(试验时间不短于 100 小时)?请重新编写方法,以适应这种新的表示法,并编写一个程序来演示所有的方法,包括复制构造函数和赋值运算符。原创 2023-09-07 10:23:14 · 298 阅读 · 0 评论 -
C++ primer plus第十一章编程练习答案
接着报告最小的元素最大的元素以及大于或等于 11 英石的元素的数量(最简单的方法是创建一个 Stonewt 对象,并将其初始化为11 英石,然后将其同其他对象进行比较。假设 a=(A Bi),c=(CDi),则下面是一些复数运算。2.对 Vector 类的头文件(程序清单 1113和实现文件(程序清单 1114)进行修改,使其不再存矢量的长度和角度,而是在magval()和angval()被调用时计算它们。乘法:a*c=(A*C-B*D,(A*D+B*C)i)。减法:a-c=(A-C,(B-D)i)。原创 2023-09-06 19:08:09 · 206 阅读 · 0 评论 -
C++ primer plus第十章编程练习答案
编写一个程序,它从栈中添加和删除 customer 结构( 用 Sack 类声明表示)每次customer 结构被删除时,其 payment 的值都被加入到总数中,并报告总数。保setgolf )的交互版本但要用构造函数来实现它(例如,setgol)的代码应该获得数据,将数据传递给构造函数来创建一个临时对象,并将其赋给调用对象即*this)。请提供未定义的方法的代码,以完成这个类的实现。再编写一个使用这个类的程序,它使用了三种可能的构造函数调用(没有参数、一个参数和两个参数》以及两种显示方法。原创 2023-09-06 18:04:33 · 282 阅读 · 0 评论 -
C++ primer plus第九章练习答案
例如,包含一个让用户输入的循环,并使用输入的数据来填充一个由 golf 结构组成的数组,数组被填满或用户将高尔夫选手的姓名设置为空字符串时,循环将结束。第一个文件是一个头文件,其中包含名称空间:第二个文件是一个源代码文件,它对这个名称空间进行扩展,以提供这三个函数的定义:第三个文件声明两个 Sals 对象,并使用 setSales()的交互式版本为一个结构提供值,然后使用 setSales()的交式版本为另一个结构提供值,另外它还使用 showSales()来显示这两个结构的内容。原创 2023-09-06 16:50:13 · 101 阅读 · 0 评论 -
C++ primer plus第八章编程练习答案
第二个成员存储candy bar的重量(可能有小数):第三个成员存 candy bar 的热量(整数)请编写一个程序,它使用一个这样的函数,即将 CandyBar 的引用、char 指针、double 和int 作为参数,并用最后3 个值设置相应的结构成员。然而,如果提供了第二个参数(int 类型),且该参数不为 0,则该函数打印字符的次数将为该函数被调用的次数(注意,字符串的打印次数不等于第二个参数的值,而等于函数被调用的次数)。是的,这是一个非常可笑的函数,但它让您能够使用本章介绍的一些技术。原创 2023-09-06 11:57:33 · 147 阅读 · 0 评论 -
C++ primer plus第七章编程练习答案
Reversc-array()将一个 double 数组的名称和长度作为参数,并将存储在数组中的值的顺序反转程序将使用这些函数来填充数组,然后显示数组:反转数组,然后显示数组:反转数组中除第一个和。10.设计一个名为 calculate()的函数,它接受两个 double 值和一个指向数的指针,而被指向的函数接受两个 double 参数,并返回一个 double 值calculate()函数的类型也是 doublc,并返回被指向的函数使用calculate()的两个 double 参数计算得到的值。原创 2023-09-06 10:20:02 · 252 阅读 · 0 评论 -
C++ primer plus第六章编程练习答案
然后,程序将列出其他的捐款者,该列表要以 Patrons 开头。3.编写一个菜单动程序的雏形该程序显示一个提供4个选项的菜单一-每个选项用一个字母标记如果用户使用有效选项之外的字母进行响应,程序将提示用户输入一个有效的字母,直到用户这样做为止。1.编写一个程序,读取键盘输入,直到遇到@符号为止,并回显输入(数字除外),同时将大写字符转换为小写,将小写字符转换为大写(别忘了cctype 函数系列)。8.编写一个程序,它打开一个文件文件,逐个字符地读取该文件,直到到达文件末尾,然后指出该文件中包含多少个字符。原创 2023-09-05 17:46:39 · 220 阅读 · 0 评论 -
C++ Primer Plus第五章编程练习答案
最后程序将显示每个结构的内容。请编写一个程序,输入全年中每个月的销售量(图书数量,而不是销售额)程序通过循环,使用初始化为月份字符的 har *数组(或 string 对象数组)逐月进行提示并将输入的数据储存在一个 iit 数组中。请编写一个程序,计算多少年后,CIco 的投资价值才能超过 Daphne 的投资价值并显示此时两个人的投资价值。然后,程序将显示相应行数的星号,其中第一行包括一个星号,第二行包括两个星号,依此类推。每一行包含的字符数等于用户指定的行数,在星号不够的情况下,在星号前面加上句点。原创 2023-09-05 17:38:06 · 334 阅读 · 0 评论 -
C++ Primer Plus第四章编程练习答案
3,编写一个程序,它要求用户首先输入其名,然后输入其姓:然后程序使用一个过号和空格将姓和名组合起来,并存储和显示组合结果。4.编写一个程序,它要求用户首先输入其名,再输入其姓,然后程序使用一个这号和空格将姓和名组合起来,并存储和显示组合结果。6.结构 CandyBar 包含3 个成员,如编程练习 5 所示请编写一个程序,创建一个包含 3 个元素的CandyBar 数组,并将它们初始化为所选择的值,然后显示每个结构的内容。请设计一个能够存储这些信息的结构,并编写一个使用这种结构变量的程序。原创 2023-09-05 17:30:24 · 261 阅读 · 0 评论 -
C++ Primer Plus第三章编程练习答案
该程序报告其 BMI(Body Mass Index体重指数)为了计算 BMI该程序以英寸的方式指出用户的身高(1 英尺为 12 英寸),并将以英寸为单位的身高转换为以米为单位的身高(英寸0.0254 米)。然后,将以磅为单位的体重转换为以千克为单位的体重(千克=2.2 )后,计算相应的BMI--体重-(千克)除以身高(米)的平方用符号常量表示各转换因子。7.编写一个程序,要求用户欧洲风格输入汽车的耗油量(每 100 公里消耗的汽油量(升)),然后将其转换为美国风格的耗油量一一每加仑多少英里。原创 2023-09-05 17:24:25 · 190 阅读 · 0 评论 -
C++ Primer Plus第二章编程练习答案
3.编写1个C++程序它使用3个用户定义的函数(括mai()),并生成下面的输出Three blind miceThree blind miceSee-how they runSeehow they run。5.编写一个程序,其中的 main)调用一个用户定义的函数-以摄氏温度为参数,并返回相应的华氏温度值)。6.编写一个程序其 main)调用一个用户定义的函数(以光年值为参数,并返回对应天文单位的值)。其中一个函数要调用两次,该函数生成前两行:另一-个函数也被调用两次,并生成其余的输出。原创 2023-09-05 17:19:44 · 587 阅读 · 0 评论 -
【C++】演讲比赛流程管理系统源码分享
【C++】演讲比赛流程管理系统源码分享原创 2023-06-25 18:44:52 · 296 阅读 · 0 评论 -
【C++】职工管理系统源码分享
【代码】【C++】职工管理系统源码分享。原创 2023-06-23 17:41:28 · 255 阅读 · 0 评论 -
【C++】通讯录的基本实现,附有源码分享
实现步骤:设计初始化通讯录函数,主函数初始化通讯录,设计添加联系人功能,在循环中的对应case下使用该函数。思路:根据用户不同的选择,进入不同的功能,可以选择switch分支结构,将整个架构进行搭建。实现步骤:添加一些联系人后,删除指定联系人,利用显示联系人功能函数测试该功能是否正确实现。添加联系人:向通讯录中添加新人,信息包括(姓名、性别、年龄、联系电话、家庭住址)实现步骤:查找用户输入的联系人,如果查找成功进行修改操作,查找失败提示查无此人。狭义的菜单则指的是餐饮企业为便于顾客点菜订餐而准备的介绍该。原创 2023-06-23 17:16:37 · 5558 阅读 · 0 评论 -
【C++】STL的list容器介绍
list本质是带头节点的双向循环链表,链表(list)是一种物理存储单元上非连续的存储结构,数据元素的逻辑顺序是通过链表中的指针链接实现的,链表由一系列结点组成,结点的组成一个是存储数据元素的数据域,另一个是存储下一个结点地址的指针域双向:可以从前往后,也可以从后往前遍历循环:找尾节点的时间复杂度为O( 1 )带头节点:代码实现简单,不用考虑链表为空等特殊情况,可令end()迭代器指向头节点的位置优点:采用动态存储分配,不会造成内存浪费和溢出链表执行插入和删除操作十分方便,修改指针即可原创 2023-06-18 09:34:36 · 457 阅读 · 0 评论 -
【C++】STL的deque容器
deque(双端队列)是double-ended queue 的一个不规则缩写。deque是具有动态大小的序列容器,可以在两端(前端或后端)扩展或收缩。特定的库可以以不同的方式实现deques,通常作为某种形式的动态数组。但是在任何情况下,它们都允许通过随机访问迭代器直接访问各个元素,通过根据需要扩展和收缩容器来自动处理存储。因此,它们提供了类似于vector的功能,但是在序列的开始部分也可以高效地插入和删除元素,而不仅仅是在结尾。但是,与vector不同,deques并不保证将其所有元素存储在连续原创 2023-06-16 09:26:54 · 318 阅读 · 0 评论 -
【C++】STL的vector容器
vector是C++最常用的容器之一,其本质是动态增长的数组。而vector是C++六大组件之一的容器,容器时存放数据的一些数据结构。vector比常用数组的好处在于,我们可以动态的改变大小,并且无需预先分配指定的大小。vector的尾部插入和删除的效率很高,达到了常数级别的时间复杂度。并且支持随机访问。不过对于不在末尾的插入删除,效率较低。vector容器的功能和数组非常相似,使用时可以把它看成一个数组。原创 2023-06-15 22:43:57 · 437 阅读 · 0 评论 -
【C++】STL的string容器介绍
在c语言中,我们常使用char*的字符串,而在c++中,我们使用c++标准程序库中的string类,因为它和前者比较起来,不用担心内存是否足够、字符串长度等等,而且作为一个类出现,它集成的操作函数足以完成我们大多数情况下的需要。同时string类内部封装了很多成员函数,例如:查找find,拷贝copy,删除delete,替换replace,插入insert等等。在我们编写的程序中使用string容器,需要包含头文件:#include原创 2023-06-15 17:00:45 · 519 阅读 · 0 评论 -
【C++】STL基本介绍
STL (standard template libaray - 标准模板库):是 C++ 标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的软件框架。通俗来说:STL就是将常见的数据结构(例如 顺序表,链表,栈,队列,二叉树,哈希...)以模板的形式进行封装,使用时,不用我们人为再去写,可以直接调用。并且包含常见的通用的泛型算法(一些常规的算法也不用自己实现,可以直接调用)。容器(container),算法(algorithm),迭代器(iterator)原创 2023-06-14 14:54:46 · 1202 阅读 · 0 评论 -
【c++】static和const修饰类的成员变量或成员函数
当我们使用c++的关键字static修饰类中的成员变量和成员函数的时候,此时的成员变量和成员函数被称为静态成员。静态成员包含:静态成员变量静态成员函数1、静态成员变量静态成员变量有着如下几个特点:所有对象共享一份数据在编译阶段分配内存类内声明,类外初始化原创 2023-06-12 23:11:56 · 1763 阅读 · 0 评论 -
c++的函数模板,类模板
现在的c++编译器实现了c++新增的一项特性——函数模板。函数模板是通用的函数描述,也就是说,它们使用泛型可用具体的类型(如int或double)替换。通过将类型作为参数传递给模板,可使编译器生成该类型的函数。由于模板允许以泛型(而不是具体类型)的方式编写程序,因此有时也被称为通用编程。由于类型是用参数表示的,因此模板特性有时也被称为参数化类型。原创 2023-04-15 10:26:26 · 1139 阅读 · 0 评论 -
c++的多态
程序调用函数时,将使用哪个可执行代码块呢?将源代码中的函数调用解释为执行特定的函数代码块被称为函数名联编。在c语言中,在非常简单,因为每个函数名都对应一个不同的函数。在c++中,由于函数重载的缘故,这项任务更复杂。编译器必须查看函数参数以及函数名才能确定使用哪个函数。然而,c/c++编译可以在编译过程完成这种联编。在编译过程中进行联编被称为给静态联编,又称为早期联编,然而虚函数使这项工作变得更困难。编译器必须生成能够在程序运行时选择正确使虚方法的代码,这被称为动态联编,又称为晚期联编。原创 2023-04-13 19:44:19 · 492 阅读 · 0 评论 -
c++中的类继承
面向对象编程的主要目的是之一是提供可重用的代码。开发新项目,尤其是当项目十分庞大时,重用经过测试的代码比重新编写代码要好得多。使用已有的代码可以节省时间,由于已有的代码已被使用和测试过,因此有助于避免在程序中引入错误。另外,必须考虑的细节越少,便越能专注于程序的整体策略。c++类提供了更高层次的重用性。目前,很多厂商提供了类库,类库由类声明和实现构成。因为类组合了数据表示和类方法,因此提供了比函数库更加完整的程序包。通常,类库是以源代码的方式提供的,这意味这可以对其进行修改,以满足需求。原创 2023-04-12 15:44:55 · 910 阅读 · 0 评论 -
c++的友元,运算符重载
重载运算符限制在C++语言中已有的运算符范围内,并且允许重载的运算符之中,不能创建新的运算符。运算符重载实质上是函数重载,因此编译程序对运算符重载的选择,遵循函数重载的选择原则。重载之后的运算符不能改变运算符的优先级和结合性,也不能改变运算符操作数的个数 及语法结构。运算符重载不能改变该运算符用于内部类型对象的含义。它只能和用户自定义类型的对象 一起使用,或者用于用户自定义类型的对象和内部类型的对象混合使用时。原创 2023-04-09 21:02:14 · 1388 阅读 · 1 评论 -
c++的类(构造函数,析构函数,拷贝构造函数,类的组合)
在日常生活或者编程中,简单的问题可以用面向过程的思路来解决,直接有效,但是当问题的规模变得更大时,用面向过程的思想是远远不够的,所以慢慢就出现了面向对象的编程思想,世界上有和很多人和事物,每一个都可以看做一个对象,而每个对象都有直接的属性和行为,对象与对象之间通过方法来交互。面向对象是一种以“对象”为中心的编程思想,把要解决的问题分解成各个对象,建立对象的目标的目的不是为了完成一个步骤,而是为了描述某个对象在整个解决问题的步骤中的属性和行为。类:具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。原创 2023-04-06 17:36:37 · 273 阅读 · 0 评论 -
c++的函数重载,命名空间
函数多态时c++在c语言的基础上新增的功能。默认参数让我们能够使用不同数目的参数调用同一个函数,而函数多态(函数重载)让我们能够使用多个同名的函数。术语“多态”指的是有多种形式,因此函数多态允许函数可以有多个形式。类似地,术语“函数重载”指的是可以有多个同名的函数,因此对名称进行了重载。这两个术语指的是同一回事,但我们通常使用函数重载。可以通过函数重载来设计一系列函数----它们完成相同的工作,但是用不同的参数列表。原创 2023-04-06 00:57:07 · 263 阅读 · 1 评论 -
c++中的引用,默认参数,占位参数
c++中新增了一种复合类型---引用变量,引用是已定义的变量的别名。例如,如果将b作为a变量的引用,则可以交替使用rats和rodents来表示该变量。那么这种别名有什么作用呢?引用变量的主要用途是用作函数的形参。通过将引用变量用作参数,函数将使用原始数据,而不是其副本。这样除指针之外,引用也为函数处理大型结构提供了一种非常方便的途径,同时对于设计类来说,引用也是必不可少的。原创 2023-04-05 15:28:12 · 1038 阅读 · 0 评论 -
c++入门篇——介绍篇
c语言相面过程,c++面向对象c++能够对函数111进行重载,可使通过同名的函数功能变得更加强大c++引入了名字空间,可以使定义的变量名更多c++可以使用引用传参,应用传参比起指针传参更加快,指针传参还需要传送,而引用传参不需要传送参数,就能使函数共用一个变量c++使用了类,能够继承,继承使得定义相似的类时能够直接从上一层得到一些方法或变量来进行直接使用c++相比c语言功能强大的同时,也带来了更复杂多阳光的语法,这对于初学者来说是一个大的难点,这也使得c++在编程和学习上的难度提高了,并原创 2023-03-22 20:10:27 · 96 阅读 · 0 评论