注册 登录
编程论坛 C++教室

关于struct的问题

wahchun 发布于 2010-08-07 16:59, 1057 次点击
struct Test

Test(int){}
Test(){}
void fun(){}
};
int main()

Test a(1);//语句1
a.fun();//语句2
Test b();//语句3
b.fun();//语句4
return 0;
}

请问语句1-4哪一句会产生什么错误?
10 回复
#2
不归鹄2010-08-07 17:29
结构体?没见过结构体里有函数声明的。你这是C++还是C?这不是C++的类、对象什么的。是C,C的结构体里只有数据,没有函数。你函数声明也就算了,你不加分号也就算了,你干嘛加个大括号?C++里的类里的成员函数也不是这样声明的吧,空函数?唉,我已经看不懂了

[ 本帖最后由 不归鹄 于 2010-8-7 17:31 编辑 ]
#3
lampeter1232010-08-07 17:31
构造函数?
#4
BlueGuy2010-08-07 17:35
哥也没见这么先进的写法, 只见过 结构体里面有函数指针的。
显然是 c++的代码,
#5
不归鹄2010-08-07 17:38
终于看懂了一点点,你是写错关键字了,你应该把struct改成class,这样你的程序就顺理成章了。两个构造函数,一个带参数,一个不带参数,两个都是空函数。还有一个成员空函数。没有成员数据!
#6
Devil_W2010-08-10 13:13
提示: 该帖被管理员或版主屏蔽,只有管理员可见
#7
不归鹄2010-08-10 13:41
以下是引用Devil_W在2010-8-10 13:13:05的发言:


你还没搞明白struct跟class的区别。
你还真以为我就是这样理解的啊,嘿嘿
#8
不归鹄2010-08-10 13:44
回复 6楼 Devil_W
话说我的那个置顶帖呢?是不是你把它给灭了,不过没关系,我已经把附件备份了
#9
lampeter1232010-08-10 13:45
以下是引用Devil_W在2010-8-10 13:13:05的发言:


你还没搞明白struct跟class的区别。
我也不知道struct有什么用, class完全能够取代struct
#10
liuzhengshen2010-08-10 18:37
楼主您可以结贴了,!
#11
哈哈帝王2010-08-10 21:19
语句3出现了错误
在c++ 中
sturct 默认是public
而class 是private
1