在嵌入式C编程中,如果采用面向对象的方式编程,那么外设就相当于一个对象,但是这个对象并不能多次被创建,所以我们必须引入单例模式。所谓单例模式,就是一个类最多可以创建一个对象。
在C语言中的实现如下:
Person *getPerson(){
static Person* p = NULL;
if(p != NULL){
return p;
}
p = (Person*)malloc(sizeof(Person));
return p;
}
这样子将p设置为static,就可以实现单例模式,当然,在操作系统的时候,创建对象可能需要加入关键代码声明,否则会导致多次创建。