4 早起的虫儿灬

尚未进行身份认证

暂无相关简介

等级
TA的排名 3w+

C++并发编程实战第6章问题

C++并发编程实战第6章,代码清单6.4队列实现——单线程版template<typename T>class queue{private: struct node { T data; std::unique_ptr<node> next; node(T data_): data(std::move(data_)) {...

2018-04-07 20:12:28

C++矩阵库 Eigen 快速入门

出处:https://www.cnblogs.com/python27/p/EigenQuickRef.html最近需要用 C++ 做一些数值计算,之前一直采用Matlab 混合编程的方式处理矩阵运算,非常麻烦,直到发现了 Eigen 库,简直相见恨晚,好用哭了。 Eigen 是一个基于C++模板的线性代数库,直接将库下载后放在项目目录下,然后包含头文件就能使用,非常方便。此外,Eig

2018-01-16 19:54:38

LeetCode Two Sum时间复杂度O(n)解法尝试版本2

上一版考虑掉了vector中的值可能是负值的情况,所以不能完全解题。但是可以将vector中每个数都变成正数,这样就不会出现非法下标了。有两种方式可以选择1、给vector中每个数加上1个足够大的正值,相当于使坐标偏移,让成为HashTable的数组下标的vector中的每个值散布于0及其以上 2、取绝对值方式2首先排除,因为vector中要是存在绝对值相同但是符号不同(一正一负)的两个数

2018-01-10 12:43:21

字符串分割渣渣版本,适用于任何字节类型字符

以某个字符串为分割标志将字符串分割#include #include #include template int Divid(const std::basic_string& sTContent, const std::basic_string& TDiv, std::list>& listTString){ if( true == TDiv.empty() ) { re

2017-12-29 21:41:51

深入探索C++对象模型一书中拷贝构造函数和NRV关系探讨

转自:http://blog.guorongfei.com/2016/01/11/cpp-copy-constructor-nrv/最近深入探索C++对象模型一书,对于P67中最后一段话的第一句非常不解这个程序的第一个版本不能实施 NRV 优化,因为 test class 缺少一个 copy constructor从这段文字来看如果没有拷贝构造函数就不会有 NR

2017-12-26 20:54:36

关于虚表的疑惑与证实

一直以来都有一个困惑,但从未动手去证实,就是关于含虚函数的同一类的每个对象各有一张虚表吗?今天突然有了一些想法,于是决定先提出自己的想法,并且顺便证实一下,先来假设每个对象各有一张虚表1、如果有类中有很多虚函数,那么虚表就可能很大,如果每个对象都有一个独立的虚表,那么消耗的内存会非常大,C++的设计者应该不会如此糊涂,假设不成立2、如果即使一个虚函数被重写无数次,在某个特定

2017-12-23 23:03:00

LeetCode Two Sum时间复杂度O(n)解法尝试版本1

题目如下:Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not us

2017-11-17 20:23:15

模板与特立独行的VS

双十一前夕买的书到了,其中一本便是C++ Templates,书比较老了但依旧经典,周末的时候翻看了下,感觉挺好。今天在等待代码编译时,突发脑袋里面蹦出了一个疑问,虽然C++标准有规定,模板会被进行两次三阶段的编译,但是什么时候开始对模板进行编译呢(当我把博客写了一半之后发现C++ Templates一书中明确提到了实例化之前就进行语法检查,于是开始继续研究VS到底有多特立独行)?于是我写下了

2017-11-13 21:19:21

leetcode Array Partition I

Given an array of 2n integers, your task is to group these integers into n pairs of integer, say (a1, b1), (a2, b2), ..., (an, bn) which makes sum of min(ai, bi) for all i from 1 to n as large a

2017-11-08 21:47:32

leetcode二叉树合并非递归版本

迭代+队列的方式,代码如下:/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL)

2017-11-07 13:45:00

LeetCode二叉树合并

先上题:Given two binary trees and imagine that when you put one of them to cover the other, some nodes of the two trees are overlapped while the others are not.You need to merge them into a new b

2017-10-19 01:19:22

初出茅庐

先来吐槽一把,不知道为什么,Chrome上不能打开CSDN博客了!目前用的IE不爽今天尝试了下LeetCode上最简单的算法题,题目大概是这样的:判断一个机器人是否回到原点,机器人解析一串输入的字符串,当解析到的字符为'R'时向右走一步,为'L'时向左走一步,为'U'时向上走一步,为'D'时向下走一步,如果机器人返回了原点返回真,否则返回假。这道题确实很简单,根本不用关

2017-10-18 00:36:51

《Effective C++》读书摘要

作者:Florian链接:http://www.cnblogs.com/fanzhidongyzby/archive/2012/11/18/2775603.html最近刚读完《Effective C++》,相对来说,这本书的内容比较贴近基础,对于刚掌握C++基础的人会有不少的提高。不过书中还是涉及了不少C++的高级特性,阅读起来需要查阅相关的资料。书中给出了大量的示

2017-09-01 00:05:58

父类中访问子类成员

委屈的父类一般情况下来说,父类的中的成员往往是最委屈的,子类要是有个同名(仅仅需要名字一样)成员,自己的成员就会被隐藏,子类还可以访问自己的非私有成员,但是自己想访问子类中的成员就不行,当子类与自己有同名的成员时,访问到的是自己的成员,没有同名成员时意图直接访问子类成员则直接报错.......这是何等悲惨,为此,我们应该做些什么来为父类谋得一些权利,让父类可以顺利的访问子类非费私有成员。为

2017-08-18 00:17:27

智能指针简单实现

//SmartPointer,h#ifndef _SMARTPOINTER_H_#define _SMARTPOINTER_H_namespace practice{template class unique_ptr{private: T *m_ptr;public: explicit unique_ptr(T *ptr = nullptr

2017-08-15 01:09:25

C++重载箭头操作符的理解

作者:custa出处:http://blog.csdn.net/custa/article/details/5674434今天看《C++ Primer》的成员访问操作符。看重载箭头操作符部分,刚开始有点迷茫,看了两遍总算有点理解,把心得写在这,与各位分享,如果有错误欢迎指正。 箭头操作符(->)的通常用法是,使用一个类对象的指针来调用该指针所指对象的成员。左操作数为对象指针,右

2017-08-01 23:55:23

装饰者模式

定义:动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更灵活类型:结构型模式类图: 四大组件:1、抽象组件类Component,这个类可以是抽象类或者是接口类(建议抽象类),它为子类提供了行为的标准接口,子类根据自身情况实现自己的行为,这里将要发的继承并不是为了继承行为,而是为了使具体组件(被装饰)与装饰者的类型相互匹配,所以通过继承的方式,利用赋值兼容性

2017-07-29 00:38:23

C++复习之const限定符

C语言中的const在C语言中const限定符是由编译器保证被修饰的变量”常量”属性,其在运行时依旧可以被改变,也就是说C语言中被const修饰的变量并不是真正意义上的常量,而是一个只读变量。 const只读变量内存的分配 和普通变量的分配规则一样,局部const只读变量的空间分配在栈上,全局const只读变量的空间分配在只读存储区(确切的说是只读静态存储区) 对C中c

2017-07-23 14:51:33

抽象工厂模式

作者:卡奴达摩链接:http://blog.csdn.net/zhengzhb/article/details/7359385定义:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。类型:创建类模式类图:抽象工厂模式与工厂方法模式的区别        抽象工厂模式是工厂方法模式的升级版本,他用来创建一组相关或者相互依赖的对象。

2017-07-21 00:08:33

工厂方法模式

作者:卡奴达摩链接:http://blog.csdn.net/zhengzhb/article/details/7348707定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类。类型:创建类模式类图:工厂方法模式代码interface IProduct { public void pr

2017-07-19 20:04:13

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!