自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 c++实现循环链表

cyclelist.h #pragma once #include <iostream> using namespace std; class Node { public: Node() {} Node(int e, Node* p = nullptr) : data(e), next(p) {} ~Node() {} public: int data; Node* ...

2019-04-10 17:11:04 2039

原创 c++实现静态链表

StaticList.h #pragma once const int MAXSIZE = 20; class Node { public: long data; int cursor; //指向下一个元素的游标位置 }; class StaticList { public: StaticList(); ~StaticList(); bool isEmpty(); void ...

2019-04-07 18:57:52 692

原创 c++实现单链表

SingleList.h #pragma once class Node { public: Node() {} Node(int info, Node* p) : data(info), next(p) {} ~Node() {} int data; Node* next; }; class SingleList { public: SingleList(); ~Sin...

2019-04-03 15:33:01 190

原创 线性表:顺序存储实现

LinearList.h #pragma once const int MAXSIZE = 20; typedef int DataType; class DataArr { public: //这里MAXSIZE与length表示不同含义 //MAXSIZE:表示列表的最多可承载的元素个数 //length:表示列表当前的实际元素个数 DataType arr[MAXSIZE]; ...

2019-03-20 00:11:40 234

翻译 c++标准库笔记:智能指针(4)-- unique_ptr

unique_ptr是一种在异常发生时可帮助避免资源泄露的智能指针。 一般而言,unique_ptr可确保一个对象和其相应资源同一时间只被一个pointer拥有。 unique_ptr是其所指对象的唯一拥有着,自然而然地,当unique_ptr被销毁,其所指向的对象也就自动销毁。unique_ptr的必要条件就是,它指向的对象只有一个拥有者。 使用unique_ptr有个好处就是在函数内部有显...

2019-02-15 13:59:17 361 1

翻译 c++标准库(笔记):智能指针(3) -- shared_ptr使用中可能会出现的问题

问题: int* p = new int; shared_ptr&lt;int&gt; sp1(p); shared_ptr&lt;int&gt; sp2(p); //error 上述问题出在sp1和sp2都会在丢失p的拥有权时释放相应资源,也就是会析构两次。 基于此,必须保证对象只被一组shared_ptr拥有,应该总是在创建对象和相应资源时直接设立 smart pinter: shared_...

2019-02-13 16:37:23 512

翻译 c++标准库(笔记):智能指针(2) -- weak_ptr

shared_ptr主要是为了避免操心指针指向的资源,保证在最后一个对象结束生命的时候其相应资源也被释放,但有些情形并不期望这样或无法运作:1、环式指向:如果两对象使用shared_ptr互相指向对方,而一旦不存在外部引用指向他们时,这种情况下shared_ptr不会释放数据,因为每个对象的use_count()仍是1; #include &lt;iostream&gt; #include &...

2019-02-13 16:35:34 307

原创 c++标准库(笔记):智能指针(1) -- shared_ptr

自c++11起,c++标准库提供了两大类型的智能指针 1、shared_ptr 2、unique_ptr 这两个类被定义在&lt;memory&gt;内 shared_ptr:当对象再也不被使用时就被清理创建shared_ptr: shared_ptr&lt;string&gt; pNico(new string("nico"));也可以使用make_shared: shared_ptr&lt;...

2019-02-11 13:29:23 548

原创 c++标准库(笔记):std::tuple

tuple是TR1引入的,它扩展了pair的概念,可以拥有任意数量的元素。 tuple的构建与元素访问: tuple&lt;int,float,string&gt; t1(41,6.3,"niconiconi") auto t2 = make_tuple(22,44,"niconiconi"); get&lt;0&gt;(t1); get&lt;1&gt;(t1); 注1:tuple的元素类型...

2019-02-11 10:20:45 810

原创 c++标准库(笔记):std::pair

std::pair可以将两个value值组成一个单元,经常用于map、multimap、unordered_map、 unordered_multimap,以及函数需要返回一对值时使用。std::pair是一个struct而不是一个class,其所有成员均为public: namespece std{   template&lt;typename T1, typename T2&gt;   s...

2019-01-17 16:22:35 2605

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除