2017年1月8日
摘要:
元组是一种长度固定的允许有不同类型元素的集合,根据元素的个数不同又分别称作一元组、二元组、三元组等。C++11中标准库增加了一个叫std::tuple的类模板,用于表示元组。 下面的代码演示了使用C++创建一个三元组。 auto tuple = std::make_tuple(1, 'A', "te
阅读全文
posted @ 2017-01-08 01:34
abelian
阅读(2099)
推荐(0)
2017年1月6日
摘要:
一、基本语法 声明一个带有可变参数个数的模板的语法如下所示: template<typename ...Element> class tuple; tuple<int, string> a; // use it like this 在模板参数 Element 左边出现省略号 ... ,就是表示 El
阅读全文
posted @ 2017-01-06 10:15
abelian
阅读(884)
推荐(0)
2017年1月5日
摘要:
C++的模板及模板特化的几种特化:方式1特化:template<class T>class Compare{public: static bool IsEqual(const T& lh, const T& rh) { return lh == rh; }};template<>class Comp
阅读全文
posted @ 2017-01-05 19:29
abelian
阅读(232)
推荐(0)
2017年1月4日
摘要:
#include <iostream> #include <string> #include <tuple> #include <utility> #include <array> #include <string> template<char...> struct STRING { }; temp
阅读全文
posted @ 2017-01-04 14:31
abelian
阅读(1278)
推荐(0)
摘要:
template <class Apolicy> class Host { Apolicy direct_policy_use; Apolicy <SomeInternalType> InternalClone; // Problem 1: Can't do this }; template <cl
阅读全文
posted @ 2017-01-04 12:41
abelian
阅读(530)
推荐(0)
2016年12月31日
摘要:
实际上有三种类型模板参数:类型模板参数、无类型模板参数和模板模板参数(以模板作为模板的参数)。 1、类型模板参数 类型模板参数是我们使用模板的主要目的。我们可以定义多个类型模板参数: template<typename T,typename Container> class Grid {...} 同
阅读全文
posted @ 2016-12-31 14:00
abelian
阅读(458)
推荐(0)
2016年12月7日
摘要:
super(cls, inst) 获得的是 cls 在 inst 的 MRO 列表中的下一个类。 实例的属性存储在实例的__dict__中,类属性和方法存储在类的__dict__中.查找属性时,先检查特性,然后实例的__dict__,然后类的__dict__,然后基类.都不存在就会抛出异常. pri
阅读全文
posted @ 2016-12-07 18:12
abelian
阅读(291)
推荐(0)
2016年12月5日
摘要:
SO_RCVBUF SO_SNDBUF TCP socket在内核中都有一个发送缓冲区和一个接收缓冲区,不管进程是否读取socket,对端发来的数据都会经由内核接收并且缓存到socket的内核接收缓冲区之中. read所做的工作,就是把内核缓冲区中的数据拷贝到应用层用户的buffer里面,仅此而已.
阅读全文
posted @ 2016-12-05 18:30
abelian
阅读(880)
推荐(0)
2016年11月20日
摘要:
2. 装饰器语法 (1)无参数装饰器 def deco(func): print func return func @deco def foo():pass foo() 第一个函数deco是装饰函数,它的参数就是被装饰的函数对象.我们可以在deco函数内对传入的函数对象做一番"装饰”,然后返回这个对
阅读全文
posted @ 2016-11-20 18:19
abelian
阅读(115)
推荐(0)
2016年11月10日
摘要:
/*T ->return type, E -> error type, D -> parameter type */ template<typename T, typename E, typename D = void> using result_t = typename internal::res
阅读全文
posted @ 2016-11-10 15:11
abelian
阅读(106)
推荐(0)