如何在C++中将整数值读入常量?
如何正确地将此代码从 Java 重写为 C++:
final int number = scanner.nextInt();
我正在尝试,const number << cin;但它不起作用。
数量应该是恒定的。
在 C++ 中可能吗?
回答
您不能分配给const. 你必须初始化它:
int x = 0;
std::cin >> x;
const int number = x;
如果你愿意,把它放在一个函数中,这样你就可以写:
const int number = read_number();
正如评论中提到的,使用立即调用的 lambda 表达式,您可以在一行中完成所有操作:
const int number = [](){ int x; std::cin >> x; return x; }();
lambda 表达式是[](){ int x; std::cin >> x; return x; }并()立即调用它并number使用返回值进行初始化。