특정 기능에 대한 클래스가 여러 개 있습니다. 다른 하나는 "도우미"클래스이므로 클래스 중 하나만 사용자 코드에 의해 인스턴스화되어야합니다. 그러나 이러한 도우미 클래스는 사용자 코드가 사용할 수있는 유용한 정보를 노출합니다.클래스 간의 개인 데이터 및 메서드 공유
그래서 기본 클래스에서만 액세스 할 수 있도록 도우미 클래스의 생성자를 사용할 수 있습니다.
마찬가지로 '사용자 코드'가 아니라 적절한 클래스에서만 접근 할 수있는 방법과 데이터를 갖는 것이 유용 할 것입니다. 하나의 파일로 기능에 대한
장소의 모든 클래스와 해당 파일에 로컬 변수를 생성하는 '정적'사용
솔루션 지금까지 생각했습니다. 메인 클래스와 모든 '도우미'클래스의 인스턴스가 하나만있을 것이므로이 방법이 효과적 일 수 있지만 "좋은"해결책은 아닙니다.
'도우미 클래스'친구에게 기본 클래스를 지정하십시오. 이것은 또한 작동하지만, 이상적인 클래스가 아닌 모든 개인 데이터에 대한 주 클래스 액세스를 제공합니다.
가상 기본 클래스에서 상속 : 가능한 최선의 해결책이라고 생각하십시오. '보호 된'을 통한 공유 데이터, 비공개 데이터는 비공개로 유지되며 공개 데이터가 노출됩니다. 아직이 이론에서 어떤 구멍도 뚫어지지 않았습니다. 이것이 72Mhz의 클럭 속도를 가진 임베디드 시스템이기 때문에 성능 측면을 고려해야합니다.
저는 전문가는 아니지만 성능을 원하는 임베디드 시스템의 가상 기능을 고려하면 좋은 생각이 아닙니다. – Manu343726