C++에서는 그럴 수 없다는 것을 알고 있지만 함수가있는 코드를 생성 할 수있는 툴체인 일 수 있습니다. 모든 클래스 목록. 예를 들어 여러 파일에 걸쳐 다음과 같은 내용이 있습니다.C++에서 특정 클래스를 상속받은 모든 선언 된 클래스의 목록을 얻는 방법
class MyClass : public ParticularClass {
....
}
class MyClass2 : public ParticularClass {
....
}
그런 다음 런타임 중에 클래스의 단일 인스턴스에 대한 포인터를 원합니다. 의 내 생성 된 코드는 다음과 같은 형태 가정 해 봅시다 :
void __populate_classes() {
superList.append(new MyClass());
superList.append(new MyClass2());
}
는 또한, superList 유형
List<ParticularClass*>
이 될 것입니다. 또한 Qt를 사용하여
ParticularClass
이 파생되므로
QObject
이되므로 어쨌든 클래스 이름을 가져올 수 있습니다. 기본적으로 클래스를 내관해야하므로 내 내부 코드가 새로 정의 된 유형에 대해별로 신경 쓰지 않습니다.
그래서 툴체인으로이 코드를 생성 할 수 있습니까? 만약 qmake
혼자서 가능하다면 괴상한 케이크에 장식하는 것과 같습니다 :)
시간 내 주셔서 감사합니다.