摘要: ```cpp #include #include #include //c++ 11 template void checkSize(C &c) { if(c.size() > 3) { c[3] = 10; //单线程OK,多线程可能出错 } c.at(3) = 10; } void arrayPart() { //array 实际上是对c/c++语言中的原生数组进行了封装 //namespac 阅读全文
posted @ 2020-02-24 19:43 i0gan 阅读(112) 评论(0) 推荐(0) 编辑
摘要: ```cpp#include #include #include #include #include #include #include #include #include #include #include #include //STL 是一个框架, 将数据结构和算法进一步的抽象//容器, 迭代器, 算法//容器: 储存东西的//类别://1 序列式容器 array / vector / deq... 阅读全文
posted @ 2020-02-24 19:41 i0gan 阅读(395) 评论(0) 推荐(0) 编辑
摘要: ```cpp #include #include #include #include //#include //#include //#include //#include //#include //#include using namespace std; /* keywords of c++ alignas(c++11) //声明结构体或类的对齐数 alignof(c++11) //查看结构体 阅读全文
posted @ 2020-02-24 19:30 i0gan 阅读(289) 评论(0) 推荐(0) 编辑
摘要: ```cpp#include #include #include #include #include static void autoValue();static void autoPointer();static void newVersionFor();static void newVersionConstruct();static void defaultInitValue();static... 阅读全文
posted @ 2020-02-24 19:27 i0gan 阅读(487) 评论(0) 推荐(0) 编辑
摘要: ```cpp #include #include //基础函数 void printInfo(int a, int b, int c) { std::cout void templatePrint(T1 a, T2 b, T3 c) { std::cout void operator() (T1 a, T2 b, T3 c) const { std::cout void printUseFun(F 阅读全文
posted @ 2020-02-24 19:23 i0gan 阅读(412) 评论(0) 推荐(0) 编辑
摘要: ```cpp #include #include #include //智能指针总结: /* */ void sharedPtrNotice(); class Parent; typedef std::shared_ptr ParentPtr; typedef std::weak_ptr WeakParentPtr; class Child : public std::enable_shared_ 阅读全文
posted @ 2020-02-24 19:20 i0gan 阅读(350) 评论(0) 推荐(0) 编辑
摘要: ```cpp #include #include #include class Object; typedef std::unique_ptr UniqueObjectPtr; using ObjectPtr = std::shared_ptr; void print(const UniqueObjectPtr& obj) {} class Object { public: Object(int 阅读全文
posted @ 2020-02-24 19:18 i0gan 阅读(178) 评论(0) 推荐(0) 编辑
摘要: #include <iostream> #include <memory> #include <cassert> /* //this //调用了两次析构函数, ParentPtr p(this); //智能指针出了作用域后就delete this ,析构了 //所以错了,为了解决这个问题,就需要自身 阅读全文
posted @ 2020-02-24 19:15 i0gan 阅读(719) 评论(0) 推荐(0) 编辑
摘要: ```cpp #include #include #include //auto ptr //shared_ptr //unique_ptr //weak_ptr class Parent; //采用前置声明 using ParentPtr = std::shared_ptr; typedef std::weak_ptr WeakParentPtr; class Child { public: / 阅读全文
posted @ 2020-02-24 19:11 i0gan 阅读(353) 评论(0) 推荐(0) 编辑
摘要: ```cpp #include #include static void interfaceOfSharedPtr(); int main(void) { interfaceOfSharedPtr(); return 0; } class Object { public: Object(int id) : m_id(id) { std::cout ; //作为参数的obj,相当于拷贝了一次,use 阅读全文
posted @ 2020-02-24 19:09 i0gan 阅读(145) 评论(0) 推荐(0) 编辑