【智能家居】1、C语言面向对象引入类和对象的概念

什么是类和对象

类是用户自定义的一种数据类型,也称类类型——C语言中的结构体

对象

类的一种具象

 代码测试

#include <stdio.h>

//类
struct Animal{
char name[12];//成员属性
int age;
char sex;
void (*peat)();//成员方法
void (*pbeat)();
};

void dogEat(){
printf("dogEat\n");
}

void catEat(){
printf("catEat\n");
}

void personEat(){
printf("personEat\n");
}

int main(){
//对象,事物的具象
struct Animal dog;
struct Animal cat;
struct Animal person;

dog.peat=dogEat;
cat.peat=catEat;
person.peat=personEat;

dog.peat();
cat.peat();
person.peat();

return 0;
}

这是一个使用结构体和函数指针的例子。在结构体`Animal`中,有两个成员方法:`peat`和`pbeat`。这两个方法都是函数指针,可以指向任何接受相同参数并返回相同类型的函数

在`main`函数中,创建了三个`Animal`对象:`dog`、`cat`和`person`。然后分别将`dogEat`、`catEat`和`personEat`函数的地址赋值给它们的`peat`成员。最后,通过`dog.peat()`、`cat.peat()`和`person.peat()`的方式调用了这三个函数,输出相应的结果。

结构体对象给结构体中的成员赋值方法替换(多个成员赋值的时候使代码简洁,多个成员间用“逗号”隔开):

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值