Skip to content

pointer()

Kevin110026 edited this page Mar 4, 2025 · 1 revision

new pointer(_val = 0)

此函式庫的特色之一

功能形同一般變數,但是可以定義變數為"參考其他變數"

property - _val

可以想像成definition (def) (我們正考慮把名稱從_val改為def)

範例程式
let a = new pointer(123);
let b = new pointer(a);
print(b); // 123
a._val = 456;
print(b); // 456

在這裡,pointer b的定義為pointer a,所以當a改變時,b也會跟著改變

使用須知 若pointer的定義得是物件,此pointer的數值才會是動態的
let a = 123;
let b = new pointer(a);
print(b); // 123
a = 456;
print(b); // 123

你也可以中途改變pointer的定義:

範例程式
let a = new pointer(123);
let b = new pointer(456);
let c = new pointer(a);
print(c); // 123
c._val = b;
print(c); // 456

property - val

定義指向的最終數值

範例程式
let a = new pointer(123);
let b = new pointer(a);
let c = new pointer(b);
print(c); // 123
c.val = 456;
print(c); // 456
print(a); // 456

運算:

可視為一般變數進行運算

範例程式
let a = new pointer(4);
let b = new pointer(3);
print(a+b) // 7
print(a*b) // 12

Clone this wiki locally