首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

为啥vector的begin()形参都是空,但是被重载了?

2012-08-02 
为什么vector的begin()形参都是空,但是被重载了??const_iterator begin() constiterator begin()形参都

为什么vector的begin()形参都是空,但是被重载了??
const_iterator begin() const;
iterator begin();
形参都是一样的 但却可以.

自己写个Vector 
写成一样.却说不能重载??


[解决办法]
const 函数是可以区分重载的。


[解决办法]
写一小段测试一下



照c++primer说,begin()是否返回const值要看容器类型是否是const。
所以这里begin()的返回值应该是非const类型。
但const_iterator 可以接受这个值。尽管它不能被用来赋值。

以上是标准库。至于楼主新写的类具体如何就不清楚了。

热点排行