随笔分类 - C++
摘要:## 概念 仿函数就是让类的使用像一个函数,其实现就是类中实现一个operator()。 ## 使用 ``` class Data{ public: void operator(){ cout << "无参重载" << endl; } void operator(int x, int y){ cou
阅读全文
摘要:## 运算符重载 运算符重载一般作为类的成员函数实现,用于实现自定义类的运算操作。 ``` [返回值] operator[运算符](参数...){...}; ``` ### 参数 - 参数个数必须与运算符原意需要的参数相同,比如重载+,就需要两个参数(左参数和右参数) - 对于单目运算符,不需要传入
阅读全文
摘要:# unordered_map ## 头文件 ``` #include #include using namespace std; ``` ##增删查改 unordered_map底层实现为哈希表,增删效率与查找效率都是O(1) ### 增加元素 1. emplace(key,value) 2. i
阅读全文
摘要:## 什么是STL? STL(Standard Template Library),即标准模板库,是一个具有工业强度的,高效的C++程序库。它被容纳于C++标准程序库(C++ Standard Library)中,是ANSI/ISO C++标准中最新的也是极具革命性的一部分。该库包含了诸多在计算机科
阅读全文
摘要:## 迭代器(iterator)是一中检查容器内元素并遍历元素的数据类型。 1. 每种容器类型都定义了自己的迭代器类型,如vector: vector::iterator iter;这条语句定义了一个名为iter的变量,它的数据类型是由vector定义的iterator类型。 2. 使用迭代器读取v
阅读全文
摘要:1、定义 const的意思是constant,即常量。当对一个变量添加了const修饰符后,编译器即将该变量认定为常量,不能再对该变量进行修改。 2、左定值,右定向,const修饰不变量 const修饰指针变量有三种情况: A 修饰指针指向的内容 B 修饰指针 C 既修饰指针,又修饰指针指向的内容
阅读全文
摘要:思路转自循环队列 ##思路解析 该数据结构是一个环,这个环我们可以用数组来模拟。对于循环队列,队列中的任何位置都可以作为队列头,并且队尾位置可以用下式求得: tailIndex = (headIndex+count-1)%capacity 其中,count是队列长度,capacity是队列容量 以下
阅读全文
摘要:先入先出(FIFO)的数据结构 入队(enqueue)和出队(dequeue) 队列是典型的FIFO数据结构 实现队列 为了实现队列,可以使用动态数组和指向数组头部的索引;一个队列最主要的操作为入队和出队,可以将它们设置为返回值为布尔值的函数,操作成功返回true,操作失败返回false。还需要一个
阅读全文
摘要:1、解释 begin():返回一个当前vector容器中起始元素的迭代器 end():返回一个当前vector容器中末尾元素的迭代器(注意object.end()指向的是最后一个元素的下一个位置,所以访问最后一个元素应该是object.end()-1) front():返回当前vector容器中起始
阅读全文
摘要:1.map概念 map是一种数据结构,提供了一种键值对容器,里面存储的数据都是成对出现的。每一对中的第一个值被成为“关键字(key)”,每个关键字只能在map中出现一次;与关键字相对应的是值。 2.声明 include<map> map<int,string> ID_name; map<int,st
阅读全文
摘要:1.网络应用流程框架 2.缓存的目的: 在用户量、访问数巨大的情况下,服务器的资源有限、数据库每秒能够接受的请求有限,需要在有限的资源下尽可能大地提供吞吐量。一个有效的解决方案是使用缓存,在上图中每个请求的环节都可以使用缓存。 3.缓存的属性和行为: 缓存的属性: 1.命中率:缓存最重要的属性,等于
阅读全文
摘要:创建链表 链表是用于存储数据的一种数据结构,它由一个一个的结点连接组成,链表头是指向头结点的指针,链表尾是空指针nullptr。每个结点分为两个部分,一个部分用于存储数据,一个部分用于存储指向下一个链表的指针,下面是创建链表的几种方式 不使用构造函数,创建一个包含两个结点的链表: #include
阅读全文
摘要:首先,看看拷贝构造函数使用的三种情形: 1、用一个对象去初始化另一个对象时,注意是初始化而不是赋值; 2、将对象作为形式参数传给函数时,这点要注意,当函数的形参是对象的常引用,即形如const XX& y的情形,没有调用拷贝构造函数; 3、函数返回对象时 一个特别注意的点是:类不一定有默认构造函数,
阅读全文
摘要:今天在菜鸟教程上学习了C++的继承,有一点收获。 首先,是概念的学习。被继承的类叫做基类,继承的类叫做派生类,使用语法是: class Derivation:Access-Specifier Base{}; Access-Specifier是访问修饰符,分为private,protected和pub
阅读全文