的std :: string ::回()

时间:2011-07-10 11:08:08

标签: c++ string stl stdstring

为什么没有std::basic_string<...>::back()成员函数?

功能显然在那里,我的意思是,可以写

  • myString[myString.size()-1]

  • *myString.rbegin()

我是否假设潜在的back()和上述两种方法之间有一些错误的等价?你可以说我的第二个版本足够简洁,但是,为什么不提供一个简单的实现功能,使字符串更接近容器?我有什么警告吗?

感谢。

3 个答案:

答案 0 :(得分:9)

没有特别的原因std::string不应该具有这些功能,并且这个断言得到了它们在即将推出的C ++标准中添加的支持。

答案 1 :(得分:2)

如果要相信C ++ 0x标准(或至少是工作草案),那么front()back()确实存在。

见第21.4.5节。

答案 2 :(得分:1)

MSDN说有is one。并伴随front()。也许你只是有一个古老的,doddery编译器。