我对以下代码感到困惑:
#include <iostream>
using namespace std;
int *foo()
{
//Operation
}
int main ()
{
auto int ret = foo();
}
我在GCC下编译了上面的代码,但是我得到了以下错误:
error: two or more data types in declaration of 'ret'
auto int ret = foo();
但是,如果我删除int
类型,就像这样:
auto ret = foo();
然后它运行成功。
auto
是存储类并且int
是数据类型,那么为什么在第一种情况下会出现错误“两种或多种数据类型”?