读书人

小弟我想用C语言OOP。为神马这代码编译

发布时间: 2012-05-09 12:13:59 作者: rapoo

我想用C语言OOP。。。为神马这代码编译不过??
[code=C/C++][/code]
#include<stdio.h>

struct stu;
struct DataMember;

void p( struct DataMember *a);

struct MemberFunction
{
void (*print)(struct DataMember* a);
};

struct DataMember
{
int a;
int b;
};

struct stu
{
struct DataMember data;

struct MemberFunction function;
};

void p( struct DataMember *a)
{
printf("%d %d ",a->a ,a->b);
}


int main()
{
struct stu a;
a.data.a = 1;
a.data.b = 2;

a.function.print = p;
a.function.print(a.data);

return 0;
}

[解决办法]
a.function.print(a.data);
-->
a.function.print(&a.data);

[解决办法]
参数类型不对,编译器肯定会报给你知,要认真看...

读书人网 >C语言

热点推荐