关于结构体

以下代码有什么问题?
1
2
3
4
5
6
7
8
9
10
11
12
13
struct Test
 {
     Test( int ) {}
     Test() {}
     void fun() {}
 };
 void main( void )
 {
     Test a(1);
     a.fun();
     Test b();
     b.fun();
 }
b.fun()会出错
解析:Test b()并不会报错,但是b.fun()就会报错,是因为Test b()是声明一个函数b(),其返回类型为Test,这样调用fun()函数的话就会报错
原文地址:https://www.cnblogs.com/upup-2015/p/5063008.html