如果我使用的是单例模式(是的,我知道 - 它们通常很糟糕)......并且我有一个像这样的实例函数:
MySingleton* Instance() {
static MySingleton instance;
return &instance;
}
什么是存储类instance
?
我正在阅读 David R. Butenhof 的“使用 POSIX 线程编程”,我遇到了这样的文字:
大多数时候,您可能会在文件范围内(即在任何函数之外)使用 extern 或静态存储类声明条件变量。如果它们被其他文件使用,它们应该具有普通(外部)存储类,如果它们仅在声明变量的文件中使用,它们应该具有静态存储类。
由于这个静态在函数内部,它是自动的吗?还是因为静态关键字而导致班级不同?
如果我将“实例”变量在其文件中移动为静态和全局(不在任何函数中) - 我仍然可以将它引用到另一个文件,还是不起作用?