自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 C++标准库之迭代器

迭代器是对指针进行进一步抽象的产物。迭代器是遍历所有容器(序列)/流的统一界面,是标准库泛形算法的基础。迭代器根据其能力分为五种:categorypropertiesvalid expressionsall categoriescopy-constructible,copy-assignableanddestructibleX b(a);b...

2015-03-04 22:01:00 110

转载 c++标准库之容器

C++最原始的容器之一是数组。数组的特点有:1.大小固定2.单独存在的数组建立在栈上,作为对象成员存在的数组建立在堆上还是栈上则要看作为宿主对象是被建立在堆上还是栈上。栈空间是有限的,所以如果数组在栈上,则不能容纳太多元素,否则会导致stack overflow。C++最原始的容器之二则是用一个指针指向从堆上申请的一块连续的内存。它的特点有:1.大小固定2.因其建立在...

2014-12-29 11:03:00 105

转载 C++标准库之condition_variable

conditon_variable(条件变量)用于线程间同步condition_variable有5个函数,函数名及对应的功能如下:wait阻塞自己,等待唤醒wait_for阻塞自己,等待唤醒,最多等待一段时间wait_until阻塞自己,等待唤醒,最多等待到某个时间点notify_one 唤醒一个等待在这个条件变量上的线程notify_all 唤醒所有等待在这个...

2014-12-19 22:27:00 140

转载 C++标准库之mutex

互斥锁有可重入、不可重入之分。C++标准库中用mutex表示不可重入的互斥锁,用recursive_mutex表示可重入的互斥锁。为这两个类增加根据时间来阻塞线程的能力,就又有了两个新的互斥锁:timed_mutex(不可重入的锁)、recursive_timed_mutex(可重入的锁)。互斥锁单独使用时主要是为了使对共享资源的互斥使用,即同时只能有一个线程使用,以防止同时使用可能...

2014-12-17 21:48:00 225

转载 c++标准库之thread

class thread是对线程的抽象。以下分别介绍thread是如何表示线程的大部分特征的。执行体  线程的执行体由一个可执行(callable)对象来表示。这个执行体可以在thread创建的时候指定。thread创建完成后线程即启动执行。  template<class Fn,class ...Args>  explicit thread(Fn &...

2014-12-17 20:34:00 169

转载 chrono

时间段的表示tmplate<class Rep,class Period=ratio<1>>class duration;duration类被用来表示时间段的计量器,Rep表示计量值,Period表示计量单位,该单位建立在与second的比率上。时间点的表示template<class Clock,class Duration=typen...

2014-12-17 15:08:00 72

转载 枚举类型

枚举类型的作用是将一组整型常量组织在一起。和类一样,每个枚举类型定义了一个新的类型。枚举属于字面常量类型。C++11之后枚举类型分为两类:1.限定作用域的枚举类型 2.不限定作用域的枚举类型定义限定作用域的枚举类型 : enum class/struct name [:type]{逗号分隔的枚举成员列表};不限定作用域的枚举类型:enum [name] [:type]{逗...

2014-12-16 20:59:00 70

转载 RTTI

运行时类型识别(run-time type identification,RTTI) 由两个运算符实现:  1.dynamic_cast 运算符  2.typeid运算符  dynamic_cast 的使用形式如下:  a)dynamic_cast<type *>(e)  b)dynamic_cast<type &>(e)  c...

2014-12-15 21:28:00 63

转载 C++数组类型与函数类型

  之所以将C++的数组类型与函数类型拿到一块说,是因为两者在很多地方都一样。  首先,声明形式上类似:  数组类型: type [num] 数组:type name[num]  函数类型: return_type (形参列表)         函数:return_type name(...

2014-12-10 22:19:00 199

转载 C++标准库之tuple

构造  构造函数   tuple的构造函数很普通,没啥说的。default (1)constexpr tuple();默认构造函数copy / move (2)tuple (const tuple& tpl) = default; 拷贝构造函数tuple (tuple&& tpl) = default;移动...

2014-11-30 19:05:00 89

转载 C++ new、delete

C++中向系统申请堆内存的方法为使用new、new[]操作符,new申请单个对象的内存,new[]申请对象数组的内存。对应的delete、delete[]操作符将new、new[]操作符申请到的内存还给系统。使用new运算符的表达式被称为new表达式,相应的,使用delete运算符的表达式被称为delete表达式。C++默认的new表达式有3种形式。(1).最基本也是最常见的,完...

2014-11-29 17:56:00 89

转载 C++ 引用

C++11 之后,C++的引用扩充为 非常量左值引用,常量左值引用,非常量右值引用,常量右值引用。什么是左值?什么是右值?左值、右值都是针对表达式而言的,左值是指表达式结束后依然存在的持久对象,右值是指表达式结束时就不存在的临时对象。一个区分左值、右值的便捷方法是:看能不能对表达式取地址,如果能,则为左值,否则为右值。什么是引用?引用并非对象,相反的,它只是为一个已经存在的对象所...

2014-11-12 15:57:00 108

转载 C++继承的一点细节问题

class base{ public: int y; int z; int x; base():x(1){} void output() { printf("%d\n",x); printf("%p\n",(void *)this); printf("%d\...

2012-08-30 18:23:00 58

转载 using 与名字查找

在编程中经常用到 using namespace std和 using std::cout,这两个语句似乎干的是一样的工作--减少要敲的字母,但仔细推敲下来,它们的语义差别还是挺大的。View Code #include<cstdio>namespace test{ void output(){puts("namespace");}...

2012-08-23 22:34:00 72

转载 HugeInt及FACT实现

//最初实现的版本比lisp写的fact要慢很多(1/5的效率),多次优化后终于比lisp快了。还能怎么提高效率?// HugeInt.h: interface for the HugeInt class.#ifndef HUGEINT_H#define HUGEINT_H#include<iostream>#include<vector>...

2012-08-21 09:47:00 188

转载 黑洞迭代器

template<typename T>class BlackHoleIterator :public iterator<output_iterator_tag,T>{ typedef BlackHoleIterator<T> _Self;public: _Self &operator*(){return *...

2012-08-15 21:58:00 68

转载 STL 学习笔记

utility:  pair为具有两个public成员的类模板。  make_pair为一个模板函数,根据参数生成pair对象。 rel_ops为一个namespace,里面包含几个模板函数,可以由==、<推导出 !=、<=、>、>=,减少工作量。memory:  auto_ptr智能指针类    1.内部指针操作: ...

2012-08-13 15:40:00 72

转载 stlport vc6下安装方法备份

http://blog.csdn.net/code_see/article/details/6301768备注:1.系统环境变量中要有VC的环境变量,否则编译会进行不下去。include变量中添加D:\Program Files\Microsoft Visual Studio\VC98\ATL\Include;D:\Program Files\Microsoft Visual...

2012-08-13 09:14:00 54

转载 静态链接库、动态链接库、静态链接、动态链接的区别

静态链接库、动态链接库都是代码库,不同点在于静态链接库在编译时被整合到可执行文件中,而动态链接库的代码不会被整合到可执行代码中。这一特点使动态链接库比静态链接库多了许多优点,如程序更改、升级方便。静态链接、动态链接是指动态链接库使用的两种方式。静态链接在可执行文件启动时加载动态链接库,动态链接则是由程序代码动态加载和卸载。所以动态加载相比静态加载有占用内存少等优点。写代码时静态加载比...

2012-02-02 11:33:00 90

转载 CVM列表结构

CVM列表的结构由 4字节金额X + 4字节金额Y + 多个CVM入口组成,每个CVM入口2字节(CVM代码+CVM类型+CVM条件)。1.金额字节的格式为二进制,数字单位为分,货币单位由当前APPLICATION的货币代码决定。2.字节1最高位(位8)为0表示位6-位1的值只有PBOC2.0规定的取值,为1表示有自定义值。EMV规范中RFU。 位7为1表示此CVM...

2011-12-20 16:52:00 1121

空空如也

空空如也

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

TA关注的人

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