Patents Examined by Jon H. T. Backenstose
  • Patent number: 5297284
    Abstract: A method for a computer compiler for an object-oriented programming language for implementing virtual functions and virtual base classes is provided. In preferred embodiments of the present invention, the data structure layout of an object includes a virtual function table pointer, a virtual base table pointer, occurrences of each non-virtual base class, the data members of the class, and occurrences of each virtual base class. If a class introduces a virtual function member and the class has a non-virtual base class with a virtual function table pointer, then the class shares the virtual function table pointer of the non-virtual base class that is first visited in a depth-first, left-to-right traversal of the inheritance tree. In preferred embodiments of the present invention, each instance of a given class shares a set of virtual function tables and virtual base tables for that class.
    Type: Grant
    Filed: April 9, 1991
    Date of Patent: March 22, 1994
    Assignee: Microsoft Corporation
    Inventors: David T. Jones, Martin J. O'Riordan, Mark J. Zbikowski