gpt4 book ai didi

c++ - 如果您的团队就一组别名达成一致,那么对 STL 容器使用类型别名是否是一种不好的做法?

转载 作者:太空狗 更新时间:2023-10-29 23:34:54 25 4
gpt4 key购买 nike

做这样的事情来保护代码免受太多 std::的影响有什么问题吗?

// These underscore_cased type aliases make my code shorter and easier to read for me. 
// For Example:
template<class T> using v=std::vector<T>;
template<class T, class U> using u_m=std::unordered_map<T,U>;
template<class T> using p_q=std::priority_queue<T>;
template<class T,class U> using u_mm=unordered_multimap<T,U>;

或者这是冒险行为?

我看不出这会像使用命名空间 std 那样污染我的命名空间。

最佳答案

这样做:

  1. 使您的代码更难阅读。

  2. vecu_m 污染命名空间(可能是全局的)。

C++ 本身相当简洁。我的建议是习惯 std::

不过,在 class 的范围内使用 usingtypedef 并没有错。这甚至是有用的;允许您更改定义的组件而无需更改相关代码。

关于c++ - 如果您的团队就一组别名达成一致,那么对 STL 容器使用类型别名是否是一种不好的做法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55949392/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com