提问者:小点点

由C++auto推断的类型


在for loops的情况下,C++是如何自动推断数据类型的--从初始化还是从条件?。

long long n;
cin>>n;
for(auto i=1; i<=n; i++)
    cout << ((i * i) * ((i * i) - 1)) / 2 - 2 * (2 * (i - 1) * (i - 2)) << "\n";

这里,会是long long的整数吗?我的代码在使用auto时失败(可能是由于输出中的溢出负值,n=10000),在使用long long时通过。


共2个答案

匿名用户

更简单的说法是

auto i = 1;

很明显,类型,因为类型的文本。它将传递到循环中的声明。C++是非常自洽的。

停止条件的类型是,因此对您没有太大用处。

如果希望索引类型与相同,则使用

for (decltype(n) i = 1;

在循环的开始。

匿名用户

在for循环的情况下,C++如何自动推断数据类型

与所有推导的变量相同:来自初始值设定项。

在这里,我会是龙龙的整数吗?

它将是

相关问题


MySQL Query : SELECT * FROM v9_ask_question WHERE 1=1 AND question regexp '(c++auto|推断|类型)' ORDER BY qid DESC LIMIT 20
MySQL Error : Got error 'repetition-operator operand invalid' from regexp
MySQL Errno : 1139
Message : Got error 'repetition-operator operand invalid' from regexp
Need Help?