我正在开发一个声音库(使用 OpenAL),并从 FMOD 提供的界面中获得灵感,您可以在此链接中看到该界面。
我提供了一些概念,例如:声音、通道和通道组,正如您通过 FMOD 接口看到的那样,所有这些类都有一个私有构造函数,例如,如果您要创建一个声音,您可以使用提供的函数createSound()通过 System 类(如果您要创建 Channel 或 ChannelGroup,则相同)。
我想提供一个类似的机制,但我不明白它是如何工作的。例如,函数createSound()如何创建一个新的声音实例?构造函数是私有的,并且在 Sound 接口中没有任何静态方法或友谊。是否使用了一些模式?
编辑:只是为了让 OP 的问题更清楚,他/她没有问如何使用私有构造函数创建类的实例,问题在发布的链接中,如何创建具有私有构造函数且没有静态方法或朋友的类的实例功能。
谢谢。