A language translator is provided which determines memory structure at compile time for a plurality of object classes including at least one virtual base class and at least one class derived therefrom. At compile time, space for pointers (b-pointers) is set aside in each class object that will have a base table (b-table) associated therewith. The b-pointers point, at run time, to an associated b-table containing memory offsets between the base classes of the derived class. At run time, constructors construct the class objects, starting from the most derived class object and proceeding through to the base class object. However, instead of generating the virtual tables and associated pointers, as well as the adjusting functions, at compile time, the language translator generates the code for these operation to be executed at run time. Then at run time, a virtual function table is generated for the base class. Since the necessary offsets are known at run time, all of the adjusting functions, the virtual function tables, and the virtual pointers may be generated. Thus, the system completes the construction of an object.

On fournit un traducteur de langue au lequel détermine la structure de mémoire compilent l'heure pour une pluralité de classes d'objet comprenant au moins une classe basse virtuelle et au moins une classe est dérivé de là. À compilez le temps, l'espace pour des indicateurs (b-indicateurs) est mis de côté dans chaque objet de classe qui aura une table basse (b-table) associée en conséquence. Les b-indicateurs se dirigent, au temps d'exécution, à une b-table associée contenant des excentrages de mémoire entre les classes basses de la classe dérivée. Au temps d'exécution, les constructeurs construisent les objets de classe, à partir de l'objet de classe le plus dérivé et de la marche à suivre à travers à l'objet bas de classe. Cependant, au lieu de produire des tables virtuelles et des indicateurs associés, aussi bien que l'ajustement fonctionne, à compilent le temps, le traducteur de langue produit du code pour des ces opération à exécuter au temps d'exécution. Alors au temps d'exécution, une table virtuelle de fonction est produite pour la classe basse. Puisque les excentrages nécessaires sont connus au temps d'exécution, tous les fonctions d'ajustement, tables virtuelles de fonction, et indicateurs virtuels peut être produit. Ainsi, le système accomplit la construction d'un objet.

 
Web www.patentalert.com

< (none)

< Cruciform parachute with arms attached

> Rigid crankshaft cradle and actuator

> (none)

~ 00043