나는 3 개의 인터페이스 클래스 IVideo , IAudio , IGPIO
과이 인터페이스를 구현할 다른 세 클래스 인 Video_impl , Audio_impl , GPIO_impl
을 가지고 있습니다.기본 클래스 인 ISingleton 인터페이스
지금까지는 간단합니다.
하지만 그 모든 객체는 싱글 톤이되어야합니다. 다음은 질문입니다. Video_impl , Audio_impl , GPIO_impl
(또는 IVideo , IAudio , IGPIO
?)이 그 인터페이스를 상속 할 수 있도록 ISingleton
인터페이스를 추상화하는 것이 좋은 생각입니까?
다음과 같이 구현할 생각입니다. 그것은 권위가 있습니까? 나는 더 좋은 방법이 있어야한다고 생각합니다.
//Isingleton.hpp
template <class T>
class ISingleton
{
public:
virtual T *getInstance() = 0;
};
class IGPIO
{
public:
virtual int SelectAudioInput() = 0;
};
class GPIO_impl : public IGPIO, public ISingleton<IGPIO>
{
public:
IGPIO *getInstance();
int SelectAudioInput() ;
private:
IGPIO *instance;
};
C++ 및 C#과 비슷한 모양입니다 ... –
감사합니다. Stefan.It이 C++입니다. – pierrotlefou