class MyClass {
  count := 0  ; 计数器初始值为0
  
  __Get() {  ; 每次访问时,将计数器加1
    return ++this.count
  }
}

; 创建一个计数器对象
a := new MyClass()

; JS的八股文实现方法:https://www.douyin.com/video/7305596268338826530
; if (a=1 && a=2 && a=3) 这个a对象=123没能直接实现
if (a.a=1 && a.a=2 && a.a=3)
  MsgBox "你牛逼"


/*  ; 等效的另一个示例
class MyClass {
  __New(number) {
    this.number := number
  }
  
  __Get(prop) {  ; prop是返回调用是属性名称,比如:a.a里后面的那个a
    Return ++this.number
  }
  
  __Call(method, args*) {
    ; 在调用对象后自动调用__Get方法
    this.__Get(method)
  }
}

; 创建一个类实例
a := new MyClass(0)

if (a.a=1 && a.a=2 && a.a=3)
  MsgBox "你牛逼"
*/

 

声明:站内资源为整理优化好的代码上传分享与学习研究,如果是开源代码基本都会标明出处,方便大家扩展学习路径。请不要恶意搬运,破坏站长辛苦整理维护的劳动成果。本站为爱好者分享站点,所有内容不作为商业行为。如若本站上传内容侵犯了原著者的合法权益,请联系我们进行删除下架。