cocos的 ts 是4.1的
override 在4.3才支持。
TypeScript: Documentation - TypeScript 4.3
你可以看一下cocos生成的js代码~ 还有很多ts特性cocos不支持 。
你在ide下写代码 ,语法提示是取决于你ide环境中的ts版本,而编译运行cocos用的自己打包的。
编辑掉了:没事了,cpp和ts不一样,ts 居然真的能在基类的构造函数里面调子类的虚函数。后来想了一下js的prototype机制,确实也是可能的。
不过一般也挺少那么调用的,因为在逻辑上和原则上,尽量不会在构造函数里面调虚函数,我也一直没有实际去用这种情况,所以还是惊讶了一下。
你是说CPP 不支持这个?
对,cpp 在类a的构造函数里面,调用的init,是a类里面的,而不是b类里面的。因为b的虚函数表这个时候没构造。
这算啥特性。。。没有ts的时候,直接手撸js也是能赋值的
那估计是tsc编译的,cocos哪有那个能力做编译
你尝试 给xx个默认值?
其实就是不建议在构造函数里面用虚函数。
我也对比了其他语言,例如c#,java之类的。子类的成员变量,也都是在基类构造函数执行完才初始化的,这时候用虚函数,子类是不完全的状态。
这也符合面向对象的逻辑。
跟编译设置有关~
比较喜欢脚本的“语法糖”~ 轻松愉快~
不允许倒也不是不能接受,略蛋疼咯
为啥叫语法糖,因为吃多了可能得糖尿病 


