C++
文章平均质量分 77
ke_lan
这个作者很懒,什么都没留下…
展开
-
构造函数与this指针
构造函数原创 2016-10-21 13:12:13 · 237 阅读 · 0 评论 -
简单二叉树(1)
树是n(n>=0)个有限个数据的元素集合,形状像一颗倒过来的树。 节点:结点包含数据和指向其它节点的指针。 根节点:树第一个结点称为根节点。 结点的度:结点拥有的子节点个数。 叶节点:没有子节点的节点(度为0)。 父子节点:一个节点father指向另一个节点child,则child为孩子节点,father为父亲节点 。 兄弟节点:具有相同父节点的节点互为兄弟节点。 节点的祖先:从根节点开始到该原创 2017-02-02 20:24:06 · 167 阅读 · 0 评论 -
map和multimap
multimap和map的用法和map完全相同区别在与multimap允许键值重复插入,和一个关于“[ ]”的重载问题一 插入的源码比较//map: pair insert(const value_type& x) { return t.insert_unique(x); } iterator insert(iterator position, const value_typ原创 2017-02-17 01:10:17 · 995 阅读 · 0 评论 -
模拟实现广义表(详细注释)
首先先来了解一下概念: 广义表是非线性的结构,是线性表的一种扩展,是有n个元素组成有限序列。 广义表的定义是递归的,因为在表的描述中又得到了表,允许表中有表。再来一个图了解一下其数据结构下来我们来代码实现一下#pragma once#include #include using namespace std;enum Type原创 2016-12-18 10:53:30 · 375 阅读 · 0 评论 -
C++继承中的对象模型
/*test : windows 7 && vc++ 2008 */ 此文基类子类均为虚函数。1,单一继承代码如下#include using namespace std;class A{public: int _a; A():_a(10){} virtual void f1() { cout<<"A::f1"<<endl; } virtu原创 2016-11-19 19:49:11 · 277 阅读 · 0 评论 -
String类的拷贝问题
string类的深浅拷贝原创 2016-10-16 14:47:06 · 358 阅读 · 0 评论 -
string类浅拷贝优化2
如上个文章所事例,另外开辟一个指针的做法是不理想的。用计数的方法平不是一定需要新的定义来实现。 我们在_pstr里面多开辟一块4个字节的空间就可以存储 一个int型的数。代码实现如下。 在这里给出了和优化一的区别。class String{public: String(const char* pstr = "") //:_pstr(原创 2016-10-21 18:03:49 · 173 阅读 · 0 评论 -
string类的浅拷贝优化1
前面的文章深拷贝中提到了浅拷贝是错误的。 但是如下的改动可以让他死而复生。#include using namespace std;class String{public: String(const char* pstr = "") :_pcount(new int) { if(NULL == pstr) { _pstr = new char[1]; *_p原创 2016-10-21 15:29:20 · 181 阅读 · 0 评论 -
c++双向链表
什么都说 直接上代码#define DataType intstruct Node{ Node(const DataType& data = 0) {} Node* _pNext; Node* _pPre; //双向链表 DataType _data;};class List{public: List()原创 2016-10-21 15:17:12 · 159 阅读 · 0 评论 -
关于windows 调试。托管,混合
在学习公司客户端代码时候,碰到一个问题。在公司以前开发时候为了开发的简易型,在C++代码里面嵌入了C#代码。我是在调试过程中发现无法更新代码,才了解到这一问题。 https://msdn.microsoft.com/zh-sg/library/kcw4dzyf(v=vs.120).aspx这里参考官方文档指定要使用的调试器类型:“仅限本机”、“仅限托管”、“混合”、...原创 2018-07-23 08:38:33 · 1113 阅读 · 0 评论