string的size()和length()

来源:互联网 发布:消除马赛克软件 编辑:程序博客网 时间:2024/05/22 00:55

原文:http://blog.csdn.net/caomiao2006/article/details/4814927

      C++标准库中的string中两者的源代码如下:    
  size_type   __CLR_OR_THIS_CALL   length()   const   
  { //   return   length   of   sequence   
  return   (_Mysize);   
  }   
    
  size_type   __CLR_OR_THIS_CALL   size()   const   
  { //   return   length   of   sequence   
  return   (_Mysize);   
  }   
       所以两者没有区别。

 

       length是因为沿用C语言的习惯而保留下来的,string类最初只有length,引入STL之后,为了兼容又加入了size,它是作为STL容器的属性存在的,便于符合STL的接口规则,以便用于STL的算法。

       string类的size()/length()方法返回的是字节数,不管是否有汉字。

0 0