自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (1)
  • 收藏
  • 关注

原创 c++ POD

POD stands for Plain Old Data,个人实践总结,表现得如同C-struct和表示得如同RAW_data,纯粹的数据;#include<iostream>#include<cstdio>class Cat{public: int v1; int v2; //生命周期不由构造函数和析构函数控制,因此:Cat(),不可以有;~Cat(),不可以有

2017-02-28 09:42:48 463

原创 vs2015编译zeroMQ和应用

此库一直在发展中,新版越来越强大了,好像没什么朋友发布具体的上手过程,顺便写个:libzmq是c++语言开发的,正式版本在这里: https://github.com/zeromq/libzmq/releases 到这篇文件发布为止,正式稳定版是4.2.21,按照给出的链接下载zeromq-4.2.2.zip文件。 2,解压到D:\zeromq文件夹中, 3,用vs2015打开工程文件:”D

2017-02-21 14:13:25 7814 1

原创 c++,在windows下调用子进程,并获得子进程的返回值。

win32 API真是相当复杂啊,为了调用一个函数,要读那么多参数,还要查阅相有关连的其它函数…以下是主进程代码 :#include<iostream>#include<windows.h>int main(int argc, char*argv[]){ STARTUPINFO si = { sizeof(STARTUPINFO) };//在产生子进程时,子进程的窗口相关信息

2017-02-16 17:02:12 7631

原创 c++ type traits 2

另一种type traits方法:#include<iostream>#include<typeinfo>using namespace std;template<typename T>struct CharTraits{ typedef T value;};template<>struct CharTraits<char>{ typedef char value;}

2017-02-14 16:39:42 305

原创 c++ enable shared from this

是一种允许在对象内部,得到(shared_ptr自身)的方法。有几点需要注意:对于: class MyClass :public enable_shared_from_this< MyClass>{……}; 总结: 1,不可以在MyClass的构造函数中使用shared_from_this(),因为父类的弱针指成员还没有被初始化。 2,对象直接在栈上或堆上构建,也是不能使用shared_fr

2017-02-13 17:28:43 857

原创 c++ weak ptr解除指针循环引用。

看着简单,避免眼高手低,还是亲自理解一下:#include<iostream>#include<memory>using namespace std;class Point{public: int value; shared_ptr<Point> next; weak_ptr<Point> weak_Next; Point(int v):value(v){}

2017-02-13 10:33:21 763

原创 c++版 宽窄字符 转换方法

c++的locale不同于c的locale,c++的locale是个对象,这个对象又由许多叫facet对象组成,每个facet对象负责处理字符的某个方面 根据国际化的要求。比如下面这个facet: ctype< charT> 就可以处理宽窄字符转换:#include<locale>#include<string>std::wstring toWstring(std::string str)

2017-02-12 16:07:41 2528 1

转载 C++ SFINAE,替代失败不是错误

本文, 引用http://blog.csdn.net/godcupid/article/details/50420925 引用http://blog.csdn.net/freeelinux/article/details/53429009 对以上原作者表示感谢。SFINAE:Substitution Failure Is Not An Error,替代失败不是错误。个人总结: 在调用某个

2017-02-12 11:19:17 686

原创 c++ Policy-based design

基于Policy和基于traits都是一样的,只是感觉Policy倾向于行为提取,traits倾向于类型提取。好像还有一种名词:Aspect-oriented programming,不过感觉都有相同的意义。举个实例:计算加减乘除,常规方法是定义一个抽像计算的基类,然后派生出各种具体计算类…就不多说了。 下面使用Policy方法,实现一把:#include<iostream>template<t

2017-02-10 17:29:42 1340

原创 c++双向链表构成的队列

也可以看成循环队列的。需要仔细,重点是插入与弹出,结合前篇的绘图,总结逻辑是: 1先外部元素建立连接 2后内部元素改变连接 3改变内部元素连接时,留意前驱或后驱是否为空时的特例。 以下是自定义实现://circularqueue.h#ifdef _MSC_VER#pragma once#endif // _MSC_VER#ifndef CIRCULAR_QUEUE_h_H_#defin

2017-02-07 09:58:54 953

原创 c++双向链表

难点是插入与删除元素的方法,一边学习一边画图:先是插入元素方法, 1,首端插入: 2,中端插入: 3,尾端插入: 然后是删除元素的方法, a,首端删除: b,中端删除: c,尾端删除:

2017-02-03 13:28:10 516

原创 c++单向链表-数据结构

单向链表看着简单,实现起来还是需要很仔细,指向的元素需要想清楚,内存需要能正确释放,代码要讲究可读性,试了一下午,以下是自定义的实现://list.h#ifndef LIST_H_H_#define LIST_H_H_#include<cstdio>#include<cstdlib>#include<cassert>/** 节点中的具体的数据类型 */typedef int DataTyp

2017-02-02 20:52:01 370

winsocket api

包含winsocket 1.1和winsocket 2.2的api详细说明文档,pdf格式。

2017-02-21

空空如也

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

TA关注的人

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