C++ 为什么g++;是否接受缺少基础类型的引用类型?
我本想给类添加一个复制构造函数,但忘了添加类型。g++5.4.0成功编译了该类C++ 为什么g++;是否接受缺少基础类型的引用类型?,c++,c++11,g++,C++,C++11,G++,我本想给类添加一个复制构造函数,但忘了添加类型。g++5.4.0成功编译了该类 struct Foo { Foo(const&) {} Foo() {} }; int main() { Foo f1; Foo f2 = f1; } 下面是一个g++5.4.0成功编译和构建的最小程序 struct Foo { Foo(const&) {} Foo() {} }; int main() { Foo f1; Foo f2 = f
struct Foo
{
Foo(const&) {}
Foo() {}
};
int main()
{
Foo f1;
Foo f2 = f1;
}
下面是一个g++5.4.0成功编译和构建的最小程序
struct Foo
{
Foo(const&) {}
Foo() {}
};
int main()
{
Foo f1;
Foo f2 = f1;
}
为什么g++不将
Foo(const&){}
报告为错误?这似乎是我安装的g++5.4.0中的一个缺陷
它无法在上使用g++6.3进行编译
我使用了相同的代码块
struct Foo
{
Foo(const&) {}
Foo() {}
};
int main()
{
Foo f1;
Foo f2 = f1;
}
它也无法在处使用g++5.4.0进行编译。我想可能是隐式int,但请提供一个实例。@ShafikYaghmour,ideone.com不允许我选择编译器版本。网站上有允许你这样做的指针吗?是的,我评论中的链接会转到Wandbox,而Wandbox会这样做。@ShafikYaghmour这确实很奇怪。我的安装中肯定还有其他内容。这是终端的图片,显示了我发布的内容。