生成一个类Name_class并将两种数据类型存储在一个向量中
making a class Name_class and storing two data types in a single vector
我不知道 名称值(std::string n,int v(:name(n(,value(v({}这两行是如何工作的?
#include "std_library_facilities.h"
void error(std::string b)
{
throw std::runtime_error(b);
}
class Name_value
{
public:
std::string name;
int value;
Name_value(std::string n, int v)
:name(n), value(v) { }
};
int main()
{
}
此处不涉及向量;您看到的是类Name_value
及其构造函数Name_value::Name_value(std::string, int)
的声明。
构造函数是一个非常基本的东西,在你用C++做任何事情之前,你必须了解它。
构造函数是一个特殊的类成员,用于设置该类类型的新对象。在这种情况下,构造函数的定义(在类定义中内联声明(
Name_value(std::string n, int v):
name(n), value(v) { }
将任何新的Name_value
对象的name
成员设置为值n
,并将其value
成员设置为v
所以,如果你的main
包含类似的东西
int main()
{
Name_value n ("foo", 8);
}
则n.name
将被设置为包含"foo"的std::string
,并且n.value
将被设置成8
。
Name_value(std::string n, int v)
是Name_value
的构造函数,采用两个参数(n
和v
(。
: name(n), value(v)
是构造函数初始化列表,用于初始化类成员变量。在这种情况下,成员name
从n
初始化,而value
从v
初始化。
{ }
位是构造函数的主体,它是空的,因为除了初始化(已经完成(之外,不需要为此构造函数执行任何操作。
相关文章:
- int数据类型的指针指向的是什么,如果是一个类的私有数据成员,我们创建了该类的两个对象?
- 如果一个变量在它之前释放了另一个(相同的数据类型)变量,如何将其分配给内存?
- 生成一个类Name_class并将两种数据类型存储在一个向量中
- 创建一个模板函数来读取 hdf5 中的任意数据类型
- 如何制作一个为程序的每个运行中存储不同数据类型的向量
- 如何在一行中从不同的变量(数据类型)创建一个字符数组?
- 即使数据类型不同,是否有可能将帧的参数作为参数传递给回溯中的另一个帧
- 是否要确保一个线程修改的任何数据类型的共享变量对其他线程可见
- C++ HDF5 提取复合数据类型的一个成员
- 创建一个带有限制的数字数据类型,一个介于 -10 和 10 之间的整数
- 当您在C中定义一个值时,编译器如何选择数据类型
- 如何在宽字符数组的末尾附加一个零字符,以制作这种奇怪的 PCZZWSTR winapi 数据类型
- 如何在一个向量中存储具有不同数据类型的对象
- 如何拥有一个具有多个数据类型的C++堆栈
- 我们应该使用哪种数据类型来输入一个介于 0<= 数字 <= 10^18 之间的数字
- C++生成一个采用不同数据类型的函数
- 在构造子类对象的过程中,更改一个类属性的数据类型会导致segfault
- 从.txt文件中读取多个数据类型,其中一个字符串有空格C++
- c++声明一个数据类型的字节数组,该数组存储在字符串中
- 一个 C 向量可以存储多个数据类型吗?