1
메쉬 객체를 생성하는 팩토리 메소드가 있습니다. 메쉬 객체에는 다양한 풍미가있을 수있는 Vertex 클래스 멤버가 있습니다. 내가 무엇을 달성하고자하는템플릿 : 클래스 유형의 멤버를 사용하여 객체 인스턴스화
template<class T>
NewMesh* createMesh(T)
{
mesh_data* md = new mesh_data;
T* vd = new T;
md->vdata = vd;
NewMesh* mptr = new NewMesh(generateUid());
mptr->setData(md);
return mptr;
}
는 VDATA에 대한 vertex_data_P3_N3 클래스 멤버와 메쉬 객체를 생성해야이 같은입니다.
Mesh* polym = meshFactory.createMesh(vertex_data_P3_N3);
분명히 이것은 작동하지 않으며 컴파일 타임 오류가 발생합니다.
vertex_data_P3_N3 vd;
Mesh* polym = meshFactory.createMesh(vd);
클래스 타입을 전달하는 더 좋은 방법은 무엇입니까 :
이 작동하지만, 분명한 이유가 밉다 (사용되지 않는 variabel 선언)?