![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++ Primer
Roxas__
这个作者很懒,什么都没留下…
展开
-
C++ Primer 数组 笔记
数组定义时的编译器扩展因为数组中元素的个数是属于数组类型的一部分,编译的时候维度应该是已知的,所以说,定义数组时数组的维度必须是一个常量表达式,如下:unsigned cnt = 42; // 不是常量表达式constexpr unsigned sz = 42; // 常量表达式,关于constexpr,参见2.4.4节int arr[10]; // 含有10个整数的数组int *parr[sz]; // 含有42个整形指针的数组string bad[cnt]; // 错误:原创 2020-12-08 20:50:44 · 107 阅读 · 0 评论 -
C++ Primer 迭代器 笔记
介绍通过使用迭代器(iterator),可以访问string对象中的字符或vector对象中的元素。在第II部分中将要介绍,除了vector之外,标准库还定义了其他几种容器。所有标准库容器都可以使用迭代器,但是其中只有少数几种才同时支持下标运算符。另外,严格来说,string对象不属于容器类型,但是string支持很多与容器类型类似的操作,如string也支持迭代器。使用迭代器拥有迭代器的类型同时会拥有返回迭代器的成员函数。比如,这些类型都拥有名为begin和end的成员。其中begin成员负责返回指原创 2020-11-24 20:54:06 · 217 阅读 · 0 评论 -
C++ Primer Ch3习题代码
3.16 编写一段程序,把练习3.13中vector对象的容量和具体内容输出出来。检验你之前的回答是否正确,如果不对,重新学习3.3.1节直到弄明白错在何处。#include <iostream>#include <vector>#include <string>using std::vector;using namespace std;int main(){ vector<int> v1; vector<int>原创 2020-11-24 20:53:42 · 272 阅读 · 0 评论 -
C++ Primer 标准库类型Vector 笔记
vector标准库类型vector表示对象的集合,其中所有对象的类型都相同。因为vector“容纳着”其他对象,所以它也常被称作容器(container)。第II部分将对容器进行更为详细的介绍。C++语言中既有类模板(class template),也有函数模板,其中vector是一个类模板。自定义类模板在16章学习。模板本身不是类或函数,相反可以将模板看作为编译器生成类或函数编写的一份说明。编译器根据模板创建爱你类或函数的过程称为实例化(instantiation),当使用模板时,需要指出编译器应把原创 2020-11-24 14:43:09 · 143 阅读 · 0 评论 -
C++ Primer 初始化 笔记
C++中初始化的方式:直接初始化、拷贝初始化如果使用等号(=)初始化一个变量,实际上执行的是拷贝初始化(copy initialization),编译器把等号右侧的初始值拷贝到新创建的对象中去。相反的,如果初始化变量时没用等号,则执行的是直接初始化(direct initialization)。当初始值只有一个时,使用直接初始化或拷贝初始化都行,如果初始化要用到的值有多个,一般来说只能使用直接初始化的方式,以string类型变量为例:string s5 = "hiya"; // 拷贝初始化st原创 2020-11-23 19:35:35 · 124 阅读 · 0 评论 -
C++ Primer 类型别名、auto类型说明符和decltype类型指示符 笔记
2.5 处理类型2.5.1 类型别名有两种方法可用于定义类型别名(type alias)。传统的方法是使用关键字typedef:typedef double wages; // wages是double的同义词typedef wages base, *p; // base是double的同义词,p是double*的同义词其中,关键字typedef作为声明语句中的基本数据类型(参见2.3节,p45)的一部分出现。和以前的声明语句一样,这里的声明符也可以包含类型修饰,从而也能由基本数据类型构原创 2020-11-03 16:06:56 · 198 阅读 · 0 评论 -
C++ Primer const 笔记
2.4 const限定符用const关键字定义的变量,其值不能被改变,即const不能被赋值。也因此,const定义的变量必须在定义时初始化。引用的类型必须与其所引用对象的类型一致。默认状态下,const对象仅在文件内有效编译器将在编译过程中把用到const变量的地方都替换成对应的值。为了执行上述替换,编译器必须知道变量的初始值。如果程序包含多个文件,则每个用了const对象的文件都必须的能访问到它的初始值才行。要做到这一点,就必须在每一个用到变量的文件中都有对它的定义。为了支持这一用法,同时避免原创 2020-11-03 09:58:33 · 225 阅读 · 0 评论 -
C++ Primer - Ch2笔记 2.1~2.3
无符号整数和有符号整数当我们赋给无符号类型一个超出它表示范围的值时,结果时初始值对无符号类型表示数值总数取模后的余数。例如,8比特大小的unsigned char可以表示0至255区间内的值,如果我们赋了一个区间以外的值,则实际的结果是该值对256取模后所得的余数。因此,把 -1 赋给8比特大小的unsigned char所得的结果是255。负数对正数取模:参考链接:https://blog.csdn.net/oqqHuTu12345678/article/details/73607116由带余除法原创 2020-11-02 14:04:34 · 257 阅读 · 0 评论 -
C++ Primer - Ch1笔记
int main(){ std::cout << "Enter two numbers: " << std::endl; int v1 = 0, v2 = 0; std::cin >> v1 >> v2; std::cout << "The sum of " << v1 << " and " << v2 << " is " << v1 + v2 <&原创 2020-10-30 21:28:09 · 263 阅读 · 0 评论