我是 C++ 新手,对全局变量有一个问题。我在许多示例中看到全局变量是带有堆地址的指针。所以指针在全局/静态变量的内存中,地址后面的数据在堆上,对吧?
取而代之的是,您可以声明存储数据的全局(无指针)变量。因此,数据存储在全局/静态变量的内存中,而不是堆上。
这个解决方案比第一个带有指针和堆的解决方案有什么缺点吗?
编辑:
第一个解决方案:
//global
Sport *sport;
//somewhere
sport = new Sport;
第二种解决方案:
//global
Sport sport;