Data update
This commit is contained in:
parent
29a5eea0d4
commit
5c1bb7bfa9
2011 changed files with 35081 additions and 3229 deletions
|
|
@ -0,0 +1,18 @@
|
|||
module test {
|
||||
@Inject Console console;
|
||||
|
||||
public class Point(Int x, Int y) {
|
||||
@Override String toString() = $"({x},{y})";
|
||||
}
|
||||
|
||||
void run() {
|
||||
Point p = new Point(0, 0);
|
||||
p.x = 7;
|
||||
p.y = p.x;
|
||||
console.print($"{p=}");
|
||||
|
||||
// obtain the reference object itself
|
||||
Ref<Point> r = &p;
|
||||
console.print($"{r.actualType=}");
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
type MyClass = class
|
||||
public
|
||||
x: integer := 555;
|
||||
end;
|
||||
|
||||
begin
|
||||
var pi: ^integer;
|
||||
New(pi);
|
||||
pi^ := 1023;
|
||||
var pb: ^byte;
|
||||
//pb := pi; // compiler error
|
||||
var p: pointer;
|
||||
p := pi;
|
||||
pb := p;
|
||||
Print(pb^); // byte representation of integer
|
||||
loop 3 do
|
||||
begin
|
||||
pb := pointer(integer(pb)+1); // analog of pb++
|
||||
Print(pb^);
|
||||
end;
|
||||
Println;
|
||||
var obj := new MyClass; // obj is a reference to object
|
||||
// All regferences in .NET are under control of garbage collection
|
||||
Println(obj);
|
||||
var obj1 := obj; // another reference to the same object
|
||||
obj1.x := 666;
|
||||
Println(obj);
|
||||
obj := nil; // zero reference
|
||||
end.
|
||||
Loading…
Add table
Add a link
Reference in a new issue