关键字using和template的一种使用方法

2018-08-17  本文已影响10人  louyang

如果有这样的定义

template <class T>
using XXX = const T;

xxx<int> x

等于

const int x

例如

#include <iostream>

template <typename TYPE>
using IN = const TYPE&;

int add(IN<int> a, IN<int> b)
{
    return a+b;
}

int main()
{
    std::cout << add(1,2) << std::endl;
}
# g++ a.cpp && ./a.out
3

这段程序等同于

#include <iostream>

int add(const int& a, const int& b)
{
    return a+b;
}

int main()
{
    std::cout << add(1,2) << std::endl;
}
上一篇下一篇

猜你喜欢

热点阅读