C++
文章平均质量分 91
chudongfang2015
开心开心!!!!!!
展开
-
C++ map的基本操作和使用
Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序中建立一个map可以起到事半功倍的效果,总结了一些map基本简单实用的操作!1. map最基本的构造函数; mapmapstring; mapmapint; mapmapstring; mapmapchar; mapmapchar; mapmapint转载 2016-07-27 08:43:14 · 463 阅读 · 0 评论 -
C++ boost库----share_from_this类的作用和实现原理
使用boost库时,经常会看到如下的类class A:public enable_share_from_this在什么情况下要使类A继承enable_share_from_this?使用场合:当类A被share_ptr管理,且在类A的成员函数里需要把当前类对象作为参数传给其他函数时,就需要传递一个指向自身的share_ptr。我们就使类A继承enable_share_from_th转载 2018-02-07 01:18:14 · 364 阅读 · 0 评论 -
C++11特性运用--线程篇
线程 #include线程的几个重要函数 thread t(func); join(); detach(); get_id(); hardware_concurrency();创建一个线程并等待子线程/*************************************************************************原创 2018-01-31 15:14:52 · 371 阅读 · 0 评论 -
C++11 std::move语意经典理解
原文链接 I find it easiest to understand move semantics with example code. Let’s start with a very simple string class which only holds a pointer to a heap-allocated block of memory:#include #include转载 2018-02-01 16:41:08 · 1075 阅读 · 0 评论 -
C++11特性运用--lambda表达式
lambda表达式定义了一个匿名函数,并且可以捕获一定范围内的变量. 基本用法 [捕获列表] (参数表) 函数选项 -> 返回值类型 {函数体}例如:auto func = [](int a) -> int {return a*a; }//相当于int func(int a){ return a*a;}返回值类型可以省略编译器可以自动推原创 2018-02-01 16:04:57 · 394 阅读 · 0 评论 -
c++ static的作用,以及static对象在类和函数中区别
static对象如果出现在类中,那么该对象即使从未被使用到,它也会被构造以及析构。而函数中的static对象,如果该函数从未被调用,这个对象也就绝不会诞生,但是在函数每次被调用时检查对象是否需要诞生。下面详细说说static的功能以及它的来龙去脉:static作为编程语言里面一种重要的数据类型,它的地位在面试的过程里也是相当的高。为什么要引入static 函数内部转载 2017-07-29 15:32:59 · 3095 阅读 · 1 评论 -
C++多态的实现原理
1. 用virtual关键字申明的函数叫做虚函数,虚函数肯定是类的成员函数。2. 存在虚函数的类都有一个一维的虚函数表叫做虚表。类的对象有一个指向虚表开始的虚指针。虚表是和类对应的,虚表指针是和对象对应的。3. 多态性是一个接口多种实现,是面向对象的核心。分为类的多态性和函数的多态性。4. 多态用虚函数来实现,结合动态绑定。5. 纯虚函数是虚函数再加上= 0。6. 抽象类是指包转载 2017-06-24 09:46:01 · 273 阅读 · 0 评论 -
C++输出格式控制
setprecision(n)可控制输出流显示浮点数的数字个数。C++默认的流输出数值有效位是6,所以不管数据是多少,都只输出六位。如果setprecision(n)与setiosflags(ios::fixed)或者setiosflags(ios_base::fixed)合用,可以控制小数点右边的数字个数。setiosflags(ios::fixed)是用定点方式表示实数。 如果与setiosn转载 2017-04-29 15:06:17 · 646 阅读 · 0 评论 -
[C++ primer] 第13章_拷贝、赋值、销毁 知识总结+代码实现
13.1 拷贝、赋值与销毁13.1.1拷贝构造函数拷贝构造函数条件: 1. 第一个参数为自身类型的引用 2. 任何额外参数都有默认值对于类类型的成员,会使用其拷贝构造函数来拷贝,内置类型则直接拷贝。#include using namespace std;int main(){ return 0;}class Sales_data {public原创 2017-02-18 16:57:20 · 407 阅读 · 0 评论 -
[c++ primer] 关联容器_map
map 是键-值对的集合。map类型通常可以理解为关联数组,其本质在于元素的值和某个特定的键向关联,而非通过元素在数组中的位置来获取声明与定义:map m;map word_count;迭代器:map:: iterator it;对键类型的约束:键类型必须支持"map定义的类型1.迭代器进行解引用将产生pair 类型的对象其 first原创 2016-10-06 12:00:54 · 447 阅读 · 0 评论 -
[c++ primer] 关联容器_set,multimap
set类型set类型与map类型操作相似,其只有键值,按顺序排列,且为const类型,不能进行修改例示代码:#include #include #include #include using namespace std;set iset;set::iterator it;int main(){ int n; scanf("%d",&n); /原创 2016-10-09 11:26:42 · 343 阅读 · 0 评论 -
C++ 虚函数表解析
前言C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。关于虚函数的使用方法,我在这里不...转载 2018-04-24 11:59:24 · 590 阅读 · 6 评论