用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()
簡單的例子,Sqlite的東西都忘光了,哎…… ;Purebasic+Sqlite 使用學習 ;全局變量聲明 Global DbFile.s DbFile = "" Enumeration #Button_0 #Button_