以前一直以为运行时的类创建不过是new 一个class,可是直想自己实现的时候发现并非这么简单。
现在总结起来要实现之也不外乎实现以下几条:
1、类可以通过new来创建,这个是必须的也是必然的,C++肯定支持。
2、由名称到类或者类创建函数的映射关系。这个需要我们自己实现,像MFC的CRuntimeClass所实现的链表,甚至可以利用STL的链表(个人想法,未经验证)。
3、上述用的链表或其他数结构的初始化。这是最关键的地方,在MFC的实现在利用了全局类的构造函数先于main函数运行这一特点,通过一个类的构造函数专门实现链表的初始化,不知道除了这个方法之外还有没有其他方法。