我一直想知道静态变量在内存使用方面是如何工作的,甚至应该考虑吗?
我知道静态变量只会占用一个内存区域,与类本身有多少实例无关。所以从这个意义上说,使用静态变量来消耗内存也应该是明智的,对吧?但我从未偶然发现有人谈论静态变量的内存使用情况(只是你可以与不同的实例共享数据)。
例如:
class Something () {
static $DB = null;
__construct ($DB) {
$this->DB = $DB;
}
}
如果我要创建 10 个此类的实例,那么与使用非静态 $DB 变量相比,它会产生更少的内存使用量,对吧?
而如果是这样的话,是不是影响那么小,真的无所谓吗?