怎么区别string的capacity和size
#include <iostream>
#include <string>
using namespace std;
int main()
{
string st1("This is a test!");
cout<<st1.capacity()<<endl;
cout<<st1.size()<<endl;
return 0;
}
上面这个程序在VC6.0下得到结果是31和15,但是在linux下得到结果却是15和15,这个是什么原因产生的,是编译器的原因么,还是别的什么原因。这两个函数的区别在哪,请各位大侠帮忙
#include <string>
using namespace std;
int main()
{
string st1("This is a test!");
cout<<st1.capacity()<<endl;
cout<<st1.size()<<endl;
return 0;
}
上面这个程序在VC6.0下得到结果是31和15,但是在linux下得到结果却是15和15,这个是什么原因产生的,是编译器的原因么,还是别的什么原因。这两个函数的区别在哪,请各位大侠帮忙
...全文
相关推荐
C++-标准库STL-string类.pptx
string类具有以下特征:能够存储字符串的最大长度(max_size),当前字符串的容量(capacity),字符串当前字符个数(size),以及字符串能够不增长内存下存储元素的最大数量(capacity
C++(03):string的length, size, capacity, resize, reserve
主要注意的是扩容后,string对象会分配新的内存空间,然后将原来的字符串拷贝到新的空间,并释放原有的空间,也就是说:字符串的内容还维持不变,但是保存字符串的空间可能已经发生了变化。当count的数量大于当前的size时,string对象保存的字符串长度会增长,如果传递了ch参数,则使用ch的字符来填充,如果没有指定ch,则使用'\0'进行填充。如果new_cap的值大于当前string对象的容量,则对string的容量进行扩容,扩容后的容量大于等于new_cap。可以看到字符串没有受到影响。
C++ string类详解[代码]
它为字符串操作提供了大量的方法和特性,使得字符串的处理更加方便和安全。string类与C语言中的字符串有着根本的区别。
C++中的string类
```cpp string str = "Hello"; size_t cap = str.capacity(); ```12.
C++ string深入详解(最新版)
- **语法:** `size_t capacity() const;` - **示例:** `std::string s = "Hello"; size_t cap = s.capacity();`7


