Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!rutgers!princeton!allegra!ulysses!mhuxr!mhuxt!houxm!ihnp4!inuxc!pur-ee!uiucdcs!uiucdcsb!kenny From: kenny@uiucdcsb.cs.uiuc.edu Newsgroups: net.lang.c++ Subject: Access to virtual function table? Message-ID: <154000006@uiucdcsb> Date: Tue, 21-Oct-86 14:57:00 EDT Article-I.D.: uiucdcsb.154000006 Posted: Tue Oct 21 14:57:00 1986 Date-Received: Thu, 23-Oct-86 02:45:17 EDT Lines: 30 Nf-ID: #N:uiucdcsb:154000006:000:1249 Nf-From: uiucdcsb.cs.uiuc.edu!kenny Oct 21 13:57:00 1986 (Don asbestos suit) Is there any way in C++ to get access to the virtual function table for a particular class? I'm trying to hack up, without yaccing up a preprocessor, a ``monitor'' object that behaves like one of Hoare's monitors. The entry and exit primitives are well defined, so that if I'm willing to throw portability to the winds, I could just replace the virtual function entries with things that do: this.entry(); this.exit(); and for any of the machines that I'm expecting to deal with, this hook is easy enough to build. I find that marginally superior to having to remember to put entry() and exit() primitives in every member function. What I *really* want (dream on) is something analogous to the :BEFORE, :AFTER, and :AROUND specifiers in the ``flavors'' package (Smalltalk has these too, but I don't remember what they're called). (Shoot fire extinguisher and remove asbestos suit) Kevin Kenny UUCP: {ihnp4,pur-ee,convex}!uiucdcs!kenny Department of Computer Science ARPA: kenny@B.CS.UIUC.EDU (kenny@UIUC.ARPA) University of Illinois CSNET: kenny@UIUC.CSNET 1304 W. Springfield Ave. Urbana, Illinois, 61801 Voice: (217) 333-7980