C++ 模板的未来发展方向
1. 操作符与函数模板
1.1 操作符函数模板
template <typename T1, typename T2>
operator+ (Array<T1> const& x, Array<T2> const& y)
-> Array<typeof(x[0]+y[0])>;
此代码展示了一个操作符函数模板,它定义了 Array 类型对象相加的操作。 typeof 是一个编译时操作符,用于确定表达式的类型。
1.2 普通函数模板
template <typename T1, typename T2>
function exp(Array<T1> const& x, Array<T2> const& y)
-> Array<typeof(exp(x[0], y[0]))>;
对于非操作符函数,需要引入新的关键字(如 function )来支持新的语法,而操作符函数使用 operator 关键字就足以指导解析过程。
1.3 typeof 操作符的局限性
cla
超级会员免费看
订阅专栏 解锁全文
658

被折叠的 条评论
为什么被折叠?



