C++ 起别名

可以基于typedef、using等关键词实现

typedef 	std::vector<int> intvec;
using 	intvec	= std::vector<int>;	//这两个写法是等价的

另一个例子,函数指针:

typedef void (*FP) (int, const std::string&);
using FP = void (*) (int, const std::string&);

typedef std::string (* fooMemFnPtr) (const std::string&);
    using fooMemFnPtr = std::string (*) (const std::string&);

模板别名:

template <typename T>
using Vec = MyVector<T, MyAlloc<T>>;
 // usage
Vec<int> vec;

或者

template <typename T>
struct Vec
{
  typedef MyVector<T, MyAlloc<T>> type;
};
 // usage
Vec<int>::type vec;

可见,使用using关键词使得语法更简洁。

参考

https://blog.csdn.net/weixin_39640298/article/details/84641726

posted @ 2022-08-17 16:49  爱吃砂糖橘的白龙  阅读(68)  评论(0编辑  收藏  举报