09 2021 档案
摘要:一、介绍 全局对象在程序启动时分配,在程序结束时销毁。 对于局部自动对象,当我们进入其定义所在的程序块时被创建,在离开块时销毁。 局部static对象在第一次使用前分配,在程序结束时销毁。 动态分配的对象的生存期与它们在哪里创建是无关的,只有当显式地被释放时,这些对象才会销毁。 静态内存用来保存局部
阅读全文
摘要:一、介绍 sizeof运算符返回一条表达式或一个类型名字所占的字节数。 sizeof运算符满足右结合律,其所得的值是一个size_t类型的常量表达式。 在sizeof的运算对象中解引用一个无效指针仍然是一种安全的行为,因为指针实际上并没有被真正使用。 sizeof不需要真的解引用指针也能知道它所指对
阅读全文
摘要:一、介绍 set中的每一个元素只包含一个关键字:set支持高效的关键字查询操作 → 检查一个给定的关键字是否在set中。 标准库提供的set关联容器分为: 按关键字有序保存元素:set(关键字即值, 即只保存关键字的容器); multiset(关键字可以重复出现的set) 无序集合:unordere
阅读全文
摘要:一、介绍 类似容器,保存两个数据成员,用来生成特定类型的模板。 pair的实现是一个结构体,主要的两个成员变量是 first second。 因为是使用struct不是class,所以可以直接使用pair的成员变量。 定义在utility头文件中,定义如下: 类模板:template<class T
阅读全文
摘要:一、介绍 map中的元素是一些关键字-值(key-value)对:关键字起到索引的作用,值则表示与索引相关联的数据。 定义在头文件map中,即使用时需要#include <map>。 map<string, size_t> word_count_map; // 空map map<string, st
阅读全文
摘要:一、介绍 标准库容器都可以使用迭代器。 类似于指针类型,迭代器提供了对对象的间接访问。 就迭代器而言,其对象是容器中的元素或者string对象中的字符。 使用迭代器可以访问某个元素,迭代器也能从一个元素移动到另外一个元素。 迭代器分有效和无效之分,这一点和指针差不多,有效的迭代器或者指向某个元素,或
阅读全文
摘要:一、介绍 字符串字面值是一种通用结构的实例,这种结构即是C++由C继承而来的C风格字符串。 C风格字符串不是一种类型,而是为了表达和使用字符串而形成的一种约定俗成的写法。 按此习惯书写的字符串存放在字符数组中并以空字符结束。 以空字符结束的意思是在字符串最后一个字符后面跟着一个空字符'\0'。 一般
阅读全文
摘要:一、介绍 内置类型 类似于标准库vector,也是存放类型相同对象的顺序容器。 不同的地方:数组的大小确定不变,不能随意向数组中增加元素,不够灵活。 注意:如果不清楚元素的确切个数,请使用vector 二、定义和初始化内置数组 声明形如 a[d],其中a是数组的名字,d是数组的维度。 维度说明了数组
阅读全文
摘要:一、介绍 标准库类型vector表示对象的集合,其中所有对象的类型相同。 集合中的每个对象都有一个与之对应的索引,索引用于访问对象。 vector是一个类模板,不是类型。由vector生成的类型必须包含vector中元素的类型,比如 vector<int>。 要想使用vector,必须包含适当的头文
阅读全文
摘要:一、介绍 字符串类型,属于抽象数据类型库,支持可变长字符串。 内置类型是由C++语言直接定义的。比如数字和字符,体现了大多数计算机硬件本身具备的能力。 标准库定义了另外一组更高级性质的类型,它们尚未直接实现到计算机硬件中。 string表示可变长字符序列,使用时必须包含string头文件,作为标准库
阅读全文
摘要:C++常用代码示例 一、c_str()函数 // 标准库的string类提供了三个成员函数来从一个string得到c类型的字符数组 // c_str():生成一个const char *指针,指向以空字符终止的数组 // 这个数组应该是string类内部的数组 #include<iostream>
阅读全文
摘要:## 选择题 1. Python不支持的数据类型有:(A) A、char B、int C、float D、list 2. 下面程序的输出结果为:(D) ```python x = "foo" y = 2 print(x + y) ``` A、foo B、foofoo C、foo2 D、TypeErr
阅读全文

浙公网安备 33010602011771号