해당 라이브러리 (예 : library_1)에서 광범위하게 사용하는 기본 클래스를 가진 라이브러리가 있습니다.라이브러리의 특정 클래스 바꾸기
namespace library_1 {
class some_class {
}
}
나는이 라이브러리가 내가 정의하고있는이 클래스의 다른 버전을 사용하기를 원합니다. (그들은 정확히 주조 동적되지 않도록하지만 서로 다른 데이터 멤버)
namespace my_own {
class some_class {
}
}
my_own :: some_class 및 library_1 :: some_class 같은 공용 인터페이스를 가질 것입니다. 그래서이 하나의 클래스를 대체하는이 라이브러리를 컴파일 할 수 있기를 원합니다. 이것은 가능합니다.
그러나이 전체 프로세스의 복잡성은 some_class에 대한 액세스를 포함하여 첫 번째 라이브러리를 사용하는 두 번째 라이브러리 (소스 코드에 액세스 할 수 없으며 library_2라고 부릅니다)가 있다는 것입니다.
내 주요 실행 파일은 library_2 (원본 라이브러리에 대해 컴파일 됨)와이 some_class가 대체 된 library_1의 다른 버전에 모두 액세스해야합니다.
나는 이것이 복잡한 상황이라는 것을 알고 있지만 이것을 달성하기위한 가장 좋은 방법은 무엇인가 (코드 관점과 버전 제어에서 이것을 유지하는 방법에 대해)?