物件導向
- Inheritance :允許單繼承和多重繼承,使用c++當中的
public: a,b,c繼承方式
struct local{
extension_slot("local")
}
struct der derive(cppsp.test.mytype,local,<{std::vector<int>}>){
}
- Extension : 用於半動態(最終是靜態.cpp)擴充一個struct,使用extension_slot("local")匹配擴充槽,可以多次擴充
import cppsp.cpp17.base, test
struct local{
private:
function f1(){}
var v int
public:
function f2(){}
var outv int
extension_slot("local")
}
struct extension("local"){
function m1()
function m2()
}
struct extension("cppsp.test.mytype"){
function n1(){
print("test1\n")
}
}
struct extension("local"){
function m3(){
print("test2\n")
}
}
local o
o.m3()
cppsp.test.mytype oo
oo.n1()