Exemplo n.º 1
0
Arquivo: main.c Projeto: emacdona/c-oo
int main(int argc, char** argv) {
    Person ed   = person_new("Ed MacDonald");
    Person john = person_new("John Doe");

    printf("Hello %s.\n", ed->vtable->getName(ed));

    ed->vtable->setName(ed, john->vtable->getName(john));

    printf("Hello %s.\n", ed->vtable->getName(ed));

    //Using the dispatch macro
    dispatch(ed, setName, "Jane Doe");

    printf("Hello %s.\n", dispatch(ed, getName));

    person_delete(ed);
    person_delete(john);
}
Exemplo n.º 2
0
int main(void)
{
	HSTUDENT student = student_create("XiaoMing", 12, 99);
	display(student);
	HPERSON p = (HPERSON)student;
	display(p);
	student_delete(student);

	HPERSON person = person_create("XiaoHua", 11);
	display(person);
	HSTUDENT s = (HSTUDENT)person;
	display(s);
	person_delete(person);

	return 0;
}