class Test shared var _visited_construct as int = 0 # var _visited_destruct as bool = false var _visited1 as bool = false var _visited2 as bool = false var _visited3 as bool = false var _visited4 as bool = false var _visited_overload as int = 0 def main is shared assert _visited_construct # assert _visited_destruct assert _visited1 assert _visited2 assert _visited3 assert _visited4 assert _visited_overload==2 cue init test Test() _visited_construct += 1 body base.init cue init(i as int) test Test(5) _visited_construct += 1 body base.init # cue finalize # test # t as Test = Test() # _visited_destruct = true # body # pass def test1 test Test() _visited1 = true body pass def test2 test Test() _visited2 = true body pass pro test3 as int test Test() _visited3 = true get return 0 set pass get test4 as int test _visited4 = true body Test() return 0 def testOverload(i as int) test _visited_overload += 1 body pass def testOverload(s as String) test _visited_overload += 1 body pass