Scott Mayers 的“Effective Modern C++”中的第 13 项声明更喜欢 const_iterators 而不是迭代器。我同意,但我也想使用非成员函数而不是成员函数。根据这本书,应该有一个非成员函数std::cbegin()
,并且std::cend()
在 C++14 中。
为了使用这个功能,我刚刚安装了 gcc 版本 4.9.2 并使用 flag 编译-std=c++14
。在我尝试使用std::cbegin()
. 我开始寻找对此功能的支持,但找不到任何相关信息。例如,在gnu onlinedocs 状态下,甚至没有提到该功能。
我的问题是, c ++ 14 是否真的会得到支持std::cbegin()
,std::cend()
或者这是书中的错误?如果它将是 C++14 功能,是否有已经支持这些功能的编译器以及 gcc 何时支持?
SO上有很多问题,begin()
但这些问题是关于成员函数或constexpr-ness,而不是关于非成员变体的支持。