如何通过接受用户输入来设置类的常量成员值

How to set constant member value of class by taking user input?

本文关键字:常量 成员 设置 何通过 用户 输入      更新时间:2023-10-16

class person
{
public:
	person(string var):name(var){}
	void input()
	{
		string var;
		cout << "Enter your name: ";
		getline(cin, var);
		person temp(var);
		this->name = temp.name;
	}
private:
	const string name;
};

我正在尝试通过获取用户输入来设置类的常量成员(这是私有的),该输入由名为 input(在公共中)的函数完成,C++允许我们将常量变量分配给其他常量变量,但在类中我正在使用这个指针来做这件事,但它给出了错误。

。而且我不使用构造函数来做这件事。这东西在C++可能吗?

不,这是不可能的。 const类成员值需要在构造时确定。

关键字 const 实际上是出于同样的原因使用的,即它的值不能在其整个生命周期中更改,或者在整个变量在其范围内......

所以一个贴花为 const 的变量,它的值不能在代码中(声明除外)中更改,也不能在运行时更改