摘要: 使用方法: unique_ptr<string> ps1(new string("hello")); shared_ptr<vector<int>> ps2(new vector<int>(3)); //(*ps2).size() = 3;weak_ptr <vector<int>> ps5(ps2 阅读全文
posted @ 2020-12-22 19:51 zeroPatrick 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 智能指针和普通指针的区别在于智能指针实际上是对普通指针加了一层封装机制,这样的一层封装机制的目的是为了使得智能指针可以方便的管理一个对象的生命期。 在C++中,我们知道,如果使用普通指针来创建一个指向某个对象的指针,那么在使用完这个对象之后我们需要自己删除它,例如: ObjectType* temp 阅读全文
posted @ 2020-12-22 19:44 zeroPatrick 阅读(82) 评论(0) 推荐(0) 编辑
摘要: const_cast: 用来移除变量的const或volatile限定符。注意:const_cast是不能用来执行任何类型的转换的,比如只能讲const char* p 转换成char* p,而不能转成int* p。 int main() { struct T { int i; }; const T 阅读全文
posted @ 2020-12-22 13:03 zeroPatrick 阅读(649) 评论(0) 推荐(0) 编辑
摘要: 参考链接:https://baike.baidu.com/item/%E5%B0%BE%E9%80%92%E5%BD%92/554682?fr=aladdin 如果一个函数中所有递归形式的调用都出现在函数的末尾,我们称这个递归函数是尾递归的。当递归调用是整个函数体中最后执行的语句且它的返回值不属于表 阅读全文
posted @ 2020-12-21 20:10 zeroPatrick 阅读(90) 评论(0) 推荐(0) 编辑
摘要: #include <iostream> #include <string> #include <algorithm> #include <vector> using namespace std; bool comp(int a, int b) { return a < b; } struct cus 阅读全文
posted @ 2020-12-21 15:47 zeroPatrick 阅读(407) 评论(0) 推荐(0) 编辑
摘要: 整数、浮点数转字符串 std::to_string 定义于头文件 <string> std::string to_string( int value ); (1) (C++11 起) std::string to_string( long value ); (2) (C++11 起) std::st 阅读全文
posted @ 2020-12-21 13:21 zeroPatrick 阅读(1163) 评论(0) 推荐(0) 编辑
摘要: this 指针 this 指针是一个隐含于每一个非静态成员函数中的特殊指针。它指向调用该成员函数的那个对象。 当一个成员函数被调用时,自动向它传递一个隐含的参数,该参数是一个指向这个成员函数所在的对象的指针。 当对一个对象调用成员函数时,编译程序先将对象的地址赋给 this 指针,然后调用成员函数, 阅读全文
posted @ 2020-12-19 17:09 zeroPatrick 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 在multimap中,同一个键关联的元素必然相邻存bai放。基于这个事实,就可以将某个键对应的值一一输出。 1、使用find和count函数。count函数求出某个键出现的次数,find函数返回一个迭代器,指向第一个拥有正在查找的键的实例。 2、使用lower_bound(key)和upper_bo 阅读全文
posted @ 2020-12-18 16:43 zeroPatrick 阅读(365) 评论(0) 推荐(0) 编辑
摘要: question description: solution with C++: vector<int> Solution::poker(vector<int> desk) { if (desk.size() == 0) { return {}; } deque<int> hand; //手中的牌 阅读全文
posted @ 2020-12-17 20:26 zeroPatrick 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 二叉树广度优先算法: public void LevelOrder() { Queue<Node> queue = new Queue<Node>(); queue.Enqueue(_head); while (queue.Count>0) { Node node = (Node)queue.Deq 阅读全文
posted @ 2020-12-17 19:08 zeroPatrick 阅读(102) 评论(0) 推荐(0) 编辑