自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 《C++primer》第九章课后习题

答:a选list,因为需要从容器的中间位置插入元素;答:list不是预分配一块连续的内存,其内存需求是动态变化的,不存在容量限制;答:begin返回的是iterator,cbegin返回的是const_iterator。答:capacity是查询能容纳的元素个数,size是当前容器拥有的元素个数。答:接受一个容器的,两容器类型必须相同;答:向容器中添加元素,每次读取结束,将容器大小扩大二分之一。答:指向同一个容器的元素,并且end不在begin前。答:1536,1536,1536,2304。

2024-06-04 00:29:08 1273

原创 《C++primer》读书笔记---第九章:顺序容器

每个容器都定义了一个默认构造函数。除array外,其它容器默认构造函数都会创建一个指定类型的空容器,且都可以接受指定容器大小和元素初始值的参数将一个新容器创建为另一个容器的拷贝的方法有两种:可以直接拷贝整个容器,或者(array除外)拷贝由一个迭代器对指定的范围。为了创建一个容器为另一个容器的拷贝时,两个容器的类型及其元素类型必须匹配。不过,当传递迭代器参数来拷贝一个范围时,就不要求容器类型是相同的了。//每个容器都有三个元素,用给定的初始化器进行初始化//正确,类型匹配。

2024-05-30 23:55:36 1235

原创 《C++primer》第八章课后习题

关于书店程序,lz在这里就不写了,想具体了解的同学请看原书。答:输入类型与i不符,或者输入结束标识。答:因为不想无意间修改他们的值。答:因为希望用默认初始化。

2024-05-28 00:54:51 433

原创 《C++primer》读书笔记---第八章:IO库

下表列出的是一些IO类型:为了支持使用宽字符的语言,标准库定义了一组类型和对象来操纵wchar_t类型的数据。宽字符版本的类型和函数的名字以一个w开始,例如,wcin、wcout、wcerr是分别对应cin、cout、cerr的宽字符类型。注:IO对象无拷贝或赋值。

2024-05-27 23:32:47 1445

原创 《C++primer》第七章课后习题

答:没有,给用户提供的接口应该定义在public后,而类的数据成员应该定义在private后。答:默认情况下,struct中的成员是public的,而class是private的。答:不合适,编译器将10当成是容器的大小,但NoDefault没有默认构造函数。c可以提供默认构造函数。答:友元在想要访问类的私有成员时有用,弊端是可能会破坏类的封装。答:存在错误,在前面定义过的类型别名,在类内不能再重新定义。答:将类的接口和定义分离,把类的数据成员进行隐藏。答:可以,Screen类没有需要动态分配内存的成员。

2024-05-26 21:36:47 605

原创 《C++primer》读书笔记---第七章:类

像其他函数一样,当我们在类的外部定义成员函数时,成员函数的定义必须与它的声明匹配,也就是返回类型、参数列表和函数名都必须与类的内部的声明保持一致。//错误,string构造函数是explicit的//正确,直接初始化//错误,不能将explicit构造函数用于拷贝形式的初始化//正确,实参是一个显示构造的Sales_data对象和其他成员函数类似,我们既可以在类的内部也可以在类的外部定义静态成员函数。当在类的外部定义静态成员时,不能重复关键字static,该关键字只能出现在类内部的声明语句。

2024-05-26 12:23:18 948

原创 《C++primer》第六章课后习题

c,函数返回类型是指向double的指针,传入的实参是double的地址。可行函数是指形参数量与本次调用的提供的实参数量相等且每个实参类型与对应的形参类型相等。答:a是非法的,传入的实参数量不足;答:因为在使用函数的过程中,我们不希望s的值发生修改;=10存在问题,传入的数组大小可能不是十,可以显示的传入一个数组的大小n,并改为i!答:a使用第二条语句时,传入的实参不可被修改;lz的使用的是vs201,报的错误是函数str_subrange必须有返回值。答:形参是指函数头内的参数,实参是传递给函数的参数。

2024-05-25 00:54:23 802

原创 《C++primer》读书笔记---第六章:函数

一个典型的函数定义包括以下部分:返回类型、函数名字、由0个或多个形参组成的列表以及函数体。

2024-05-23 20:26:42 748 1

原创 《C++primer》第五章课后习题

答:a,ix从0到末尾遍历,if语句判断是否遍历到了末尾,应该将ix定义在函数体外;b,for语句头缺失初始化语句,应该将他设为空语句;c中ival为局部变量,应该把它定义在if外;)的语句,若循环体要执行的所有步骤都在循环头包含,则将循环体设为空语句。答:if语句比else语句多的时候,C++中规定else语句与离他最近且没有绑定else的if绑定。答:a应该将二三四行放在块内;答:块是指复合语句,当一条简单语句放不下需要表达的内容时,就需要使用块。答:a是指针没有指向尾后元素,则循环不断;

2024-05-16 19:01:58 303

原创 《C++primer》读书笔记---第五章:语句

如前所述,switch的执行流程有可能跨过某些语句,如果被跨过的语句内有变量的定义,则会产生问题。case true://因为程序的执行流可能会绕过以下语句,所以该switch语句不合法string s;//错误,控制流绕过一个隐式初始化的变量//错误,控制流绕过一个显示初始化的变量int jval;//正确,jval未初始化jval = 1;//正确,给jval赋初值if(s.empty())//s在作用域内,但没有被初始化想要解决以上问题,可以使用花括号,将一系列语句变为块。

2024-05-16 11:51:32 979

原创 《C++primer》第四章课后习题

d合法,判断iter是否为空;答:a,字符a转换为int;b,ival转换为float,最后结果转换为double;答:先判断指针cp是否为空指针,若不为空指针,则判断cp指向的对象是否为空字符串。答:第一句报错,表达式左侧必须为可修改的左值;答:a:d = 3,i= 3;答:someValue是否为1,是则递增xy,否则递减xy。答:先判断i是否等于j,然后返回布尔值,再与k比较大小。答:a:011,b:111,c:1,d:1;答:a:-86,b:-18,c:0,d:2。

2024-05-16 00:40:47 959

原创 《C++primer》读书笔记----第四章:表达式

C++定义了一元运算符和二元运算符,作用于一个对象的是一元运算符,作用于两个对象的被称为二元运算符。例如:解引用&是一元运算符,加号+为二元运算符。

2024-05-15 12:19:42 897

原创 《C++primer》第三章课后习题

b包含10个元素每个元素都为0;c包含10个元素,每个元素都为42;答:a、c正确,a的容器中的元素是vector容器,c容器中共10个元素,每个元素都是“null”;程序不合法,因为引用字符串中的元素时,若元素为空,则该行为是未定义的。答:将p2移动到p1的位置,当p1和p2不指向同一个数组的元素时,该程序是非法的。a,c非法,因为数组的大小必须为一个常量;答:不合法,可以将在定义容器时初始化,则下面的语句正确。这里是第七个的验证,读者可自行更改,验证其余选项。答:合法,a的类型是const char。

2024-05-14 01:22:27 581

原创 《C++primer》读书笔记---第三章:字符串、向量和数组

在前面介绍过使用下标来访问容器中的元素,本节中将会介绍另外一种访问容器元素的方式,它被称为迭代器,除了vector容器外,标准库中还定义了许多其他的容器,并不是所有的容器都可以使用下标访问元素,但是所有的容器都可以使用迭代器来访问,需要注意的是,虽然string对象也可以使用迭代器,但严格来讲,string并不属于容器。

2024-05-13 19:22:25 854

原创 《C++primer》读书笔记---第二章:变量和基本类型

int a = 0;int a{0};int a(0);用花括号初始化是C++11的新标准,这种方式成为列表初始化。注意:初始化不是赋值,初始化的含义是创建变量时赋予一个初始值,而赋值的含义是把对象的当前值擦除,而以一个新值来替代。//声明i而非定义iint j;//声明并定义i谨记使用struct创建一个结构体时,务必在{}后加上分号。

2024-05-11 01:08:20 746

原创 《C++primer》读书笔记---第一章:开始

**简单主函数*读取两个数,求它们的和*/注意:注释界定符(*/)不能嵌套,以下的例子很好的说明了这个问题/**注释对/* */ 不能嵌套 * “不能嵌套”几个字会被认为是源码, * 像剩余程序一样处理 * /类机制是C++语言最重要的特性之一,C++作为面向对象编程的语言,类机制是必不可少的。

2024-05-09 23:21:32 368 1

空空如也

空空如也

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

TA关注的人

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