2014-09-22 38 views

回答

1

有点像单身人士,你可以实现一个getInstance方法。

struct BAR_ *getBarInstance(void) 
{ 
    static struct BAR_ instance; /* = getInitializedBar() */ 
    return &instance; 
} 
2

我建议你申报你的主要结构(),并把它传递给需要的结构,以避免它作为一个全局变量的各种功能。只需要在头文件中包含结构。

这种方法的好处是:更容易测试你的函数 - 你可以通过模拟对象来模拟各种状态。使它更清楚你的结构在哪里使用 - 只有把它作为参数的函数。