C 语言如何实现面向对象编程的雏形
typedef struct Person Person; typedef void (*Method)(Person *my_self); typedef struct Person { char name[12]; int age; int sex; Method behavior1; // 行为1 } Person; void selfIntroducation(Person *my_self) { printf("my name is %s,age %d,sex %d\n",my_self->name,my_self->age,my_self->sex); } int main(int argc, const char * argv[]) { // 1 Person *pmst = (Person *)malloc(sizeof(Person)); // 1.1 strcpy(pmst->name, "pmst"); pmst->age = 18; pmst->sex = 0; // 2 pmst->behavior1 = selfIntroducation; // 3 pmst->behavior1(pmst); free(pmst); return 0; }