下列代码编译时会产生错误的是()
[cpp] view
plaincopy
- #include <iostream>
- using namespace std;
- struct Foo
- {
- Foo() { }
- Foo(int) { }
- void fun() { }
- };
- int main(void)
- {
- Foo a(10); //语句1
- a.fun(); //语句2
- Foo b(); //语句3
- b.fun(); //语句4
- return 0;
- }
A、语句1 B、语句2 C、语句3 D、语句4
语句3就已经不对了,应该没有后面的括号的,但编译器会认为这是函数的声明,所以3本身不报错,4基于3的认识上出错。
时间: 2024-10-12 16:54:12