C++ 创建一个static class 来存储指针
C++ Create a static class to store pointers
我正在尝试通过使用 SDL2 制作一个简单的 game/engine 来学习 C++。目前我在尝试制作静态 class.
时遇到了一些问题
我认为最简单的方法就是描述我想要实现的目标:
- 我希望能够制作一个 class(称为指针),它将存储指向不同关键对象的指针,例如 window 和渲染器。
- 我想在创建并初始化 window/renderer.
后,从我的主 *.cpp 文件将这些值设置为指针 class(私有变量)
- 然后我希望能够使用此 class 通过 getter 函数从我可能在程序中的任何位置访问这些对象,但是
- 我希望它们是静态的,这样我就可以访问原始值,而不是初始化新的空值。
我希望这是可以理解的。
(Pointer
是一个 糟糕的 class 名字。)
您想要一个 class 以便一次只能存在一个实例,并且任何知道 class 的代码都可以访问它。解决方案是单例模式。这是一个严重过度使用的模式(新手喜欢用它来代替全局变量)但这正是它的好处。
我正在尝试通过使用 SDL2 制作一个简单的 game/engine 来学习 C++。目前我在尝试制作静态 class.
时遇到了一些问题我认为最简单的方法就是描述我想要实现的目标:
- 我希望能够制作一个 class(称为指针),它将存储指向不同关键对象的指针,例如 window 和渲染器。
- 我想在创建并初始化 window/renderer. 后,从我的主 *.cpp 文件将这些值设置为指针 class(私有变量)
- 然后我希望能够使用此 class 通过 getter 函数从我可能在程序中的任何位置访问这些对象,但是
- 我希望它们是静态的,这样我就可以访问原始值,而不是初始化新的空值。
我希望这是可以理解的。
(Pointer
是一个 糟糕的 class 名字。)
您想要一个 class 以便一次只能存在一个实例,并且任何知道 class 的代码都可以访问它。解决方案是单例模式。这是一个严重过度使用的模式(新手喜欢用它来代替全局变量)但这正是它的好处。