当前位置:   article > 正文

C++ 中的 typedef 和 using

C++ 中的 typedef 和 using

  1. 语法: typedef 的语法相对固定,而 using 在C++11之后提供了更灵活的方式,可以定义模板别名等。
  2. 模板别名: 在C++11之后,using 可以用来定义模板别名,而 typedef 则无法做到这一点
  3. 作用域: 在命名空间中使用 usingtypedef 有一些差异,using 更符合命名空间的作用域规则,typedef 则没有这种作用域概念。

总的来说,using 更加现代化且灵活,尤其在C++11之后,推荐使用它来定义别名。

模板别名的例子:

  1. template <typename T> using PromisePtr = RefPtr<Promise<T>>;
  2. //使用 模板类型别名:
  3. template <typename TRet>
  4. PromisePtr<TRet> unwrap(Promise<TRet>* p)
  5. {
  6. return p;
  7. }
  8. template <typename TRet>
  9. PromisePtr<TRet> unwrap(PromisePtr<TRet> p)
  10. {
  11. return p;
  12. }

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/105972?site
推荐阅读
相关标签
  

闽ICP备14008679号