摘要: #include "stdafx.h"#include <algorithm>#include <iostream>#include <vector>#include <iterator>int _tmain(int argc, _TCHAR* argv[]){ std::vector<int> vec; int sz[] = {1, 7... 阅读全文
posted @ 2010-10-11 13:03 千里马肝 阅读(1024) 评论(0) 推荐(0) 编辑
摘要: 今天我要讲 decltype,它让完美转发函数能够返回任意类型的东西。对编写高度泛型的人来说这是很有趣的的特性。返回类型问题C++98/03 有一个有意思的盲点:给定一个像 x * y 的表达式, x 和 y 是任意类型,你却没法知道 x * y 的类型。假如 x 是 Watts 类型的, y 是 Seconds 类型的,那 x * y 的类型可能会是 Joules 类型的。 给定声明 print... 阅读全文
posted @ 2010-10-11 12:47 千里马肝 阅读(1466) 评论(0) 推荐(0) 编辑
摘要: Microsoft Visual Studio 2010 九月社区技术预览版 (CTP)所带的Visual C++编译器对四个C++0x语言特性提供了支持,也就是 lambdas,auto,static_assert,以及 rvalue references (右值引用,译注:后面不再对这个词进行翻译)。今天,我将详细介绍前三个特性。(很快我将贡献一整篇幅的文章来解释右值引用,仅仅是因为再在这里解... 阅读全文
posted @ 2010-10-11 12:46 千里马肝 阅读(1145) 评论(0) 推荐(0) 编辑
摘要: 今天我要讲的是 rvalue references (右值引用),它能实现两件不同的事情: move 语意和完美转发。刚开始会觉得它们难以理解,因为需要区分 lvalues 和 rvalues ,而只有极少数 C++98/03 程序员对此非常熟悉。这篇文章会很长,因为我打算极其详尽地解释 rvalue references 的运作机制。不用害怕,使用 ravlue references 是很容易的... 阅读全文
posted @ 2010-10-11 12:46 千里马肝 阅读(1458) 评论(0) 推荐(0) 编辑