C++ 字符串\vector 初始化

标签 c++ initialization

我对 C++ 初始化有疑问。

在 Java 中:如果我想要一个空的 StringBuffer,我应该使用

StringBuffer sb = new StringBuffer();

初始化一个空字符串缓冲区。

在C++中:如果我想使用一个空字符串,我可以声明

std::string str; 

std::string str = "";

在现实世界的项目中,我应该总是像第二种形式那样写作吗?

声明一个空 vector 怎么样?

vector<int> vec;

这样可以吗?或者我应该给这个 vec 一些空值吗?

最佳答案

std:string 和 std:vector 是类,而不是基本类型:这意味着与在声明时作为伪随机值的整数不同,字符串和 vector 具有明确定义的初始值。

std::string 的默认值为“”。

std::vector 的默认内容是 {}。

你可以使用你喜欢的东西,但初始化不是必需的,甚至不是很理想。

关于C++ 字符串\vector 初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26309467/

相关文章:

C++内存对齐

Java 开关 : variable declaration and scope

Set[1,2,3] 的 Ruby 语言特性

java - 变量似乎未初始化

c++ - 如何在 C++ 类中定义 vector <ifstream>

c++ - 拦截 C++ 方法调用(Tuxedo、tpcall)

C++:指针指向的值发生变化

c++ - 我在以下代码中收到总线错误

Python __init__ setattr 关于参数?

C 中数组初始化的困惑