摘要: 1.概述 C++11的新特性--可变模版参数(variadic templates)是C++11新增的最强大的特性之一,它对参数进行了高度泛化,它能表示0到任意个数、任意类型的参数。相比C++98/03,类模版和函数模版中只能含固定数量的模版参数,可变模版参数无疑是一个巨大的改进。然而由于可变模版参 阅读全文
posted @ 2016-08-10 18:04 程远春 阅读(4911) 评论(0) 推荐(1) 编辑
摘要: c++11中增加了线程,使得我们可以非常方便的创建线程,它的基本用法是这样的: void f(int n); std::thread t(f, n + 1); t.join(); 但是线程毕竟是属于比较低层次的东西,有时候使用有些不便,比如我希望获取线程函数的返回结果的时候,我就不能直接通过 thr 阅读全文
posted @ 2016-04-15 11:51 程远春 阅读(19060) 评论(0) 推荐(8) 编辑
摘要: std::thread thread类表示各个线程的执行。 在多线程环境下,一个线程和其他线程同时执行指令序列,并共享地址空间。 一个被初始化的线程对象代表一个正在执行的线程。比如一个线程对象是可连接的,它有一个唯一的线程ID。一个默认的没有初始化的线程对象不是可链接的,它的线程ID时和其他没有可连 阅读全文
posted @ 2016-03-11 16:06 程远春 阅读(741) 评论(1) 推荐(0) 编辑
摘要: 或许这就是所谓的成长·········· 没有人能给青春下一个准确的定义,可能是一段岁月,可能是一种心境,也可能被浓缩成一件事一首歌一个暧昧不明的人········对于我来说,所谓的缅怀青春最多的就是怀念那段刚刚结束的大学时光,我们之所以怀念是因为我们知道自己再也无法拥有············&# 阅读全文
posted @ 2016-02-01 20:32 程远春 阅读(338) 评论(0) 推荐(1) 编辑
摘要: c++11标准给广大c++程序员提供了非常强大的武器库。今天我们就利用c++11中的std::thread 实现一个半同步半异步的线程池。首先简单介绍一下线程池。线程池是为了解决大量的短时任务频繁的创建销毁线程造成性能开销的一个技术。在程序开始时创建一定量的线程。当有任务到达时,从池中选出空闲线程来... 阅读全文
posted @ 2016-01-18 12:01 程远春 阅读(513) 评论(0) 推荐(1) 编辑
摘要: 程序员要站在巨人的肩膀上,C++拥有丰富的开源库,这里包括:标准库、Web应用框架、人工智能、数据库、图片处理、机器学习、日志、代码分析等。标准库C++ Standard Library:是一系列类和函数的集合,使用核心语言编写,也是C++ISO自身标准的一部分。Standard Template ... 阅读全文
posted @ 2016-01-07 01:09 程远春 阅读(10151) 评论(1) 推荐(4) 编辑
摘要: 一、Unix可用的5种IO模型和区别:1.阻塞式IO2.非阻塞式IO3.IO复用(select和poll)4.信号驱动式IO(SIGIO)5.异步IO(POSIX的aio_系列函数)二、1.阻塞式IO模型:最流行的IO模型是阻塞式IO模型应用进程 内核(recvfro... 阅读全文
posted @ 2015-12-17 11:10 程远春 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 算法 阅读全文
posted @ 2015-12-17 09:38 程远春 阅读(327) 评论(0) 推荐(0) 编辑
摘要: 函数模板std::declval (c++11 only)template typename add_rvalue_reference::type declval() noexcept;功能描述:返回一个类型的右值引用,不管是否有没有默认构造函数或该类型不可以创建对象。(可以用于抽象基类);参数:... 阅读全文
posted @ 2015-12-06 12:00 程远春 阅读(15134) 评论(0) 推荐(2) 编辑
摘要: 深入浅出MVC模式一、MVC模式概述模型-视图-控制器(MVC模式)是一种非常经典的软件架构模式,在UI框架和UI设计思路中扮演着非常重要的角色。从设计模式的角度来看,MVC模式是一种复合模式,它将多个设计模式在一种解决方案中结合起来,用来解决许多设计问题。MVC模式把用户界面交互分拆到不同的三种角... 阅读全文
posted @ 2015-10-27 14:35 程远春 阅读(23477) 评论(2) 推荐(0) 编辑