
C++语法基础
C++基础知识
Utotao
不积跬步无以至千里
展开
-
【15】map、set、unordered_map、unordered_set
map、set、unordered_map、unordered_set在C++中使用频率较高的几种数据存储结构,因此,熟练掌握其基本的方法对于深入学习C++就先得尤为重要1、map2、set3、unordered_map4、unordered_set原创 2021-04-05 23:39:14 · 229 阅读 · 0 评论 -
【14】构造函数和析构函数
构造函数、默认构造函数、拷贝构造函数、深拷贝、浅拷贝、析构函、常成员函数,blabla一坨概念,云里雾里,今天我们就来好好理一理这些概念...1、构造函数#include "iostream"#include "string"using namespace std;class base {public: int a; base() {} base(int m_a) :a(m_a) { cout << "base()" << endl; } base原创 2021-04-04 14:31:50 · 2341 阅读 · 3 评论 -
【13】操作符重载
1、首先一个Demo#include "iostream"#include "string"using namespace std;class base {public: int a; base(int m_a) :a(m_a) { cout << "base()" << endl; }};int main(){ base a(10); base b(10); base c = a + b; cout << c.a <&l原创 2021-04-03 19:23:19 · 293 阅读 · 0 评论 -
【10】C++之泛型算法
对于顺序容器的其他操作:查找元素、替换或者删除一个特定值、重排元素顺序等。标准库并未给每个容器都定义成员函数来实现这些操作,而是定义了一组泛型算法(generic algorithm):称它们为“算法”,是因为它们实现了一些经典算法的公共接口。如排序和搜索;称它们是“泛型的”,是因为它们可以用不同类型的元素和多种容器类型(不仅包括标准库类型,如vector或list,还包括内置的数组类型)。标...原创 2019-04-25 19:03:43 · 551 阅读 · 0 评论 -
【12】C++之动态内存
全局对象在程序启动时分配,在程序结束时销毁;局部自动对象,进入其定义所在的程序块时被创建,在离开块时销毁;局部static对象在第一次使用前分配,在程序结束时销毁。每个程序拥有三个内存块:静态内存、栈、堆。分配在静态内存和栈中的对象由编译器自动创建和销毁。对于栈对象,仅在其定义的程序块运行时才存在;static在使用前分配,在程序结束时销毁。注意:我们口中讲的堆栈就是栈,...原创 2019-04-29 10:57:08 · 341 阅读 · 0 评论 -
【8】C++顺序容器之list和arry
待补充原创 2019-04-29 09:20:06 · 270 阅读 · 0 评论 -
【11】C++ 关联容器之map与set
关联容器支持高效地关键字查找和访问。两个主要地关联容器(associative-container)类型是map和set。map中的元素是一些关键字-值(key-value)对。关键字起到索引的作用,值则表示与索引相关联的数据。set中每个元素包含一个关键字;set支持高效地关键值查询操作 -- 检查一个给定关键字是否在set中。类型map和multimap定义在头文件map中;set...原创 2019-04-22 14:01:47 · 380 阅读 · 0 评论 -
【9】C++ IO库之string流
参考文章:[1]C++中的 istringstream 的用法[2]C/C++ 学习笔记:istringstream、ostringstream、stringstream 类介绍 和 stringstream类 clear函数的真正用途基于字符串的IO:头文件:#include <sstream>istringstream 类用于执行 C...原创 2019-04-21 20:59:51 · 361 阅读 · 0 评论 -
【1】C++指针与引用、const、auto、decltype
之前看过一遍《C++ Prime Plus》,可是没有做笔记,一段时间后,基本也记不住了,最近结合先关视频,再次捡起来,结合此书做出笔记,不断查漏补缺。基础概念平时显得微不足道,但不积跬步何以至千里…参考资料:[1] 《C++ Prime Plus》第五版1、C++基本内置类型和变量1.1 基本内置类型1.2 变量初始化不是赋值,初始化的含义是创建变量时赋予其一个初始值(...原创 2019-04-25 19:30:59 · 597 阅读 · 0 评论 -
【4】C++类之基础知识
C++三大特性:封装、继承和多态类的基本思想是数据抽象(data abstraction)和封装(encapsulation)类(数据抽象):1)数据抽象接口:用户能执行的操作 实现:① 类的数据成员;② 负责接口实现的函数体;③ 定义类所需的各种私有函数。2)封装实现了类的接口和实现的分离。封装之后的类隐藏了它的实现细节,也就是说,类的用户只能使用几口而无法访问实现部分。...原创 2019-04-08 16:59:17 · 525 阅读 · 0 评论 -
【3】C++函数
1、函数基础2、参数传递3、返回类型和return语句4、函数重载5、特殊用途语言特性6、函数匹配7、函数指针原创 2019-04-08 14:45:35 · 173 阅读 · 0 评论 -
【7】C++顺序容器之deque
头文件:#include <deque>在《C++ Prime》里面有这么一句话:除非你有很好的理由,否则应使用vector。deque(双端队列:支持快速随机访问)内部会维护一个map(不是STL中的map容器),即一小块连续的空间,该空间中每个元素都是指针,指向另一段(较大的)区域,这个区域称为缓冲区,缓冲区用来保存deque中的数据。因此deque在随机访问和...原创 2019-04-11 15:23:06 · 368 阅读 · 0 评论 -
【2】C++字符串、向量和数组
1、命名空间使用情况,一个项目中不同类定义了相同的函数(名称和形参完全一样,但是实现的目的不一样),可以使用命名空间加以区分和调用。例如:Person.h文件#ifndef PERSON_H#define PERSON_Hnamespace A{class Person{private: char* name; int age;public: ...原创 2019-04-07 20:57:09 · 429 阅读 · 0 评论 -
【6】C++顺序容器之vector
头文件:#include <vector>参考文章:[1]C++中vector的使用方法[2] 《C++ Primer》1、定义和初始化vector是一个类模板#include <vector>#include <string>using namespace std;int main(){/***************...原创 2019-04-11 09:18:48 · 268 阅读 · 0 评论 -
【5】C++之string操作
参考文章:[1]标准C++中的string类的用法总结1、构造函数(Constructors)语法: string(); string( size_type length, char ch ); string( const char *str ); string( const char *str, size_type length ); string(...原创 2019-04-11 01:05:01 · 297 阅读 · 0 评论