string的length跟size函数有什么区别,顺便散分,元旦快乐

string的length和size函数有什么区别,顺便散分,元旦快乐
rt


------解决方案--------------------
没区别
------解决方案--------------------
一回事,只是针对不同东西设计~~
STL中好像用size
------解决方案--------------------
我电脑上的源码(GCC4.4.1)

C/C++ code

 public:
      // Capacity:
      ///  Returns the number of characters in the string, not including any
      ///  null-termination.
      size_type
      size() const { return _M_rep()->_M_length; }

      ///  Returns the number of characters in the string, not including any
      ///  null-termination.
      size_type
      length() const { return _M_rep()->_M_length; }

------解决方案--------------------
唉 这样不太好啊

我觉得还是用length比较好 因为一般不会把string换成其它容器。而且,实际上存贮的元素数 ,应该比size()大1个才对,还有字符串结束符呢
------解决方案--------------------
size()只是为了兼容STL体系 而string是个特殊的容器,感觉size()有点尴尬
------解决方案--------------------

------解决方案--------------------
length()是过去string类的方法,size()是新的,保留length()是为了旧代码的兼容。
------解决方案--------------------
再接!
------解决方案--------------------
这个问题好像之前有考虑过,结果就忘了~这样看用起来没什么区别吧~真的只是习惯问题吧!
------解决方案--------------------
没区别+接分!
------解决方案--------------------
没有区别

已经反反复复三令五申一而再再而三地强调,不准在节日期间突击散分花钱!!!
------解决方案--------------------
jf

------解决方案--------------------
习惯用size()了
------解决方案--------------------
探讨
引用:
没区别

高手当然不屑,嘿嘿
对我们小菜(也许只是对我来说)
技术分才是命根子。。。

------解决方案--------------------
大家都说没区别,就是没区别
------解决方案--------------------
jf
------解决方案--------------------
多谢楼主替我提了个问题,也多谢mstlq的代码
------解决方案--------------------
[code=C/C++][/code]

探讨
引用:
引用:
没区别

高手当然不屑,嘿嘿
对我们小菜(也许只是对我来说)
技术分才是命根子。。。


你理解错了。坏的意思是:size()和length()没有区别。

------解决方案--------------------
接分,std的string实际上也是容器,这两个没有区别,为了使用方便。
------解决方案--------------------
jf
------解决方案--------------------
探讨
length()是过去string类的方法,size()是新的,保留length()是为了旧代码的兼容。

------解决方案--------------------
祝大家元旦快乐
------解决方案--------------------
元旦快乐
------解决方案--------------------
只是为了习惯以前的strlen而已,其实就是个方言。
------解决方案--------------------