C++
morning_sir_jking
这个作者很懒,什么都没留下…
展开
-
C++ 学习总结
好久没有用C++了,重新温习一下 C++primer plus 5记录一下忘记的知识点:类的自动转换和强制类型转换:class Test{private:int a;double b;public:Test(int a);Test(int a,double b);};Test myTest;myTest = 20; //正确原创 2016-07-09 09:54:38 · 425 阅读 · 0 评论 -
C++必知必会(十五) 指向类的成员的指针并非指针
“指向类成员的指针”这个描述中有“指针”这个术语,其实,这是不合适的,因为它们既不包括地址,行为也不像指针。 如果你已经熟悉常规指针的声明语法,那么声明一个指向成员的指针,语法并不是太可怕:int*ip; // 一个指向int的指针int C::*pimC; //一个指针,指向C的一个int成员 所要做的全部事情转载 2017-03-06 17:58:16 · 650 阅读 · 0 评论 -
C++ STL中Map的按Key排序和按Value排序
map是用来存放键值对的数据结构,可以很方便快速的根据key查到相应的value。假如存储学生和其成绩(假定不存在重名,当然可以对重名加以区分),我们用map来进行存储就是个不错的选择。 我们这样定义,map,其中学生姓名用string类型,作为Key;该学生的成绩用int类型,作为value。这样一来,我们可以根据学生姓名快速的查找到他的成绩。 但是,我们除了希望能够查询某转载 2017-02-24 10:46:33 · 626 阅读 · 0 评论 -
c++ unorder_map的用法
1、unorder_map与map不同:map的KEY值是有序的,而unorder_map则是无充的;2、unorder_map自定义的KEY值时需要注意思下面两点: · KEY为一个类时,需要重载==符号; · 需要自定义一个HASH类,至于为什么,自己百度找原因下面贴上unorder_map的两类使用方法#include #include using原创 2017-02-21 17:09:33 · 5604 阅读 · 1 评论 -
单例模式
#ifndef __SINGlETON_H__#define __SINGlETON_H__#include #define SINGLETON(CBaseClass) CBaseClass::Instance()#define DECLARE_SINGLETON(CBaseClass) \private:\ CBaseClass(){} \ virtual原创 2016-11-17 16:00:38 · 483 阅读 · 0 评论 -
rapidjson的使用例子
最近在使用json, 由以前的jsoncpp转为rapidjson, 听说这个效率高一点;不过我觉得比较好的就是rapidjson不需要库,只要头文件就可以了记录下来方便自己以后使用#include #include #include #include #include using namespace rapidjson;using namespace std;原创 2016-11-28 16:50:50 · 7077 阅读 · 0 评论 -
C++容器学习
C++中有两种类型的容器:顺序容器和关联容器。顺序容器主要有vector、list、deque等。其中vector表示一段连续的内存,基于数组实现,list表示非连续的内存,基于链表实现,deque与vector类似,但是对首元素提供插入和删除的双向支持。关联容器主要有map和set。map是key-value形式,set是单值。map和set只能存放唯一的key,multimap和multise原创 2016-09-09 14:49:41 · 491 阅读 · 0 评论 -
C++虚基类构造函数详解(调用顺序)之一
原文 http://www.cnblogs.com/haoyuanyuan/archive/2013/04/25/3041250.html主题 C++ 面向对象编程解释某个函数,我通常的讲解不会先去长篇大论去空谈,先整个例子来看看!!走起....#include #include string>using namespace std;class A{p转载 2016-07-17 10:50:14 · 15225 阅读 · 4 评论 -
C++ 友元函数
关于C++中的友元函数的总结1.友元函数的简单介绍1.1为什么要使用友元函数在实现类之间数据共享时,减少系统开销,提高效率。如果类A中的函数要访问类B中的成员(例如:智能指针类的实现),那么类A中该函数要是类B的友元函数。具体来说:为了使其他类的成员函数直接访问该类的私有变量。即:允许外面的类或函数去访问类的私有变量和保护变量,从而使两个类共享同一函数。实际上具体大概有转载 2016-07-09 09:20:36 · 382 阅读 · 0 评论 -
c++模板之SFINAE
什么是SFINAE?Substitution failure is not an error,匹配失败并不是错误,意思是用函数模板匹配规则来判断类型的某个属性是否存在,也就是说SFINAE可以作为一种编译期的不完整内省方法具体参见http://en.wikipedia.org/wiki/Substitution_failure_is_not_an_error案例:使用SFINAE判转载 2017-03-06 18:00:00 · 760 阅读 · 0 评论