相关疑难解决方法(0)

为什么删除了as_const的const &&重载?

关于C++ 17进展的博客上,我阅读了以下内容:

P0007提出一个辅助函数模板as_const,它只需要一个引用并将其作为引用返回const.

template <typename T> std::add_const_t<T>& as_const(T& t) { return t }
template <typename T> void as_const(T const&&) = delete;
Run Code Online (Sandbox Code Playgroud)

为什么const&&删除了重载?

c++ templates const c++17

20
推荐指数
1
解决办法
479
查看次数

如何使用auto变量选择迭代器类型?

我有一个std :: unordered_map

std::unordered_map<std::string, std::string> myMap;
Run Code Online (Sandbox Code Playgroud)

我想使用find获取一个const迭代器.在c ++ 03中我会这样做

std::unordered_map<std::string, std::string>::const_iterator = myMap.find("SomeValue");
Run Code Online (Sandbox Code Playgroud)

在c ++ 11中,我希望使用auto来减少模板

auto = myMap.find("SomeValue");
Run Code Online (Sandbox Code Playgroud)

这是const_iterator还是迭代器?编译器如何决定使用哪个?有没有办法可以强迫它选择const?

c++ iterator auto c++11

11
推荐指数
1
解决办法
6369
查看次数

标签 统计

c++ ×2

auto ×1

c++11 ×1

c++17 ×1

const ×1

iterator ×1

templates ×1