用Purebasic中的interface来实现面向对象…… MyClass.pb ;定义一个类的接口,其实就是定义一个类的数据结构 Interface MyClass msgbox() destory() EndInterface ;定义类的属性 Structure _Template *vTable x.s z.s EndStructure ;用一个过程来实现对类的方法和属性的实例化。 Procedure.i CreateMyClass(a.s,b.s) Protected *object._Template *object = AllocateMemory(SizeOf(_Template)) If *object *object/vTable = ?vTable_myClass *object/x = a *object/z = b EndIf MessageRequester(*object/x,*object/z) a.s = *object/x *object/x = *object/z *object/z = a ProcedureReturn *object EndProcedure Procedure msgbox(*this._Template) MessageRequester(*this/x,*this/z) EndProcedure Procedure destory(*this._Template) FreeMemory(*this) EndProcedure DataSection vTable_myClass: Data.i @msgbox() Data.i @destory() EndDataSection UClass.pb XIncludeFile "MyClass.pb" ;使用类 UClass.MyClass = CreateMyClass("Ok","MyClass!") UClass/msgbox() UClass/destory()