2
작은 과학 프로젝트 용
ptr_list에있는 모든 시뮬레이션 된 객체를 보유하는 Simulation 클래스를 설정합니다. 모든 Particles에 대한 빠른 액세스가 필요하기 때문에 추가 ptr_list를 추가했습니다. 이제는 선언 된 수업을 좋아하지 않으므로 불평을 부추겼습니다. recursive_wrapper
이 이미 나와 지적되었지만 ptr_list< recursive_wrapper<Particle> >
도 잘 작동하지 않는 것 같습니다.boost :: ptr_list의 forward-declared 클래스
#include <boost/ptr_container/ptr_list.hpp>
class SimulatedObject {
};
class Particle; // derived from SimulatedObject
class Simulation {
public:
void addObj(SimulatedObject *obj) {
simulatedObjects.push_back(obj);
}
void addObj(Particle *par) {
particles.push_back(par);
}
protected:
boost::ptr_list<SimulatedObject> simulatedObjects;
boost::ptr_list<Particle> particles;
};
int main(int argc, char** argv) {
Simulation sim();
}