我正在使用 TypeScript 和 TSLint,我有以下代码:
var myObj = {}
var id = "key"
myObj[id] = 1
delete myObj[id]
Run Code Online (Sandbox Code Playgroud)
但是我收到了来自 TSLint 的提示: Do not delete dynamically computed property keys. (no-dynamic-delete)
此规则的基本原理(如 TSLint 文档中所述):
删除动态计算的键是危险的,并且没有得到很好的优化。
我的问题是,没有TSLint配置文件中禁用此提示,我应该如何安全和优化删除id的关键myObj?
我正在C++ 11中开始一个新项目,并且发现了delete关键字,它可以防止意外调用复制构造函数等等.我是否可以在全局范围内执行"推荐"的删除操作以提高类型安全性,例如防止在表达式中签名为无符号转换?我应该默认在delete我delete的所有班级中完成所有5项操作吗?
仅供参考,这个程序需要高性能(这就是我多年来第一次使用C++的原因)并且很少有我想要复制的东西,所以副本通常是一个bug,尽管不是100%的时间所以我对这个具体案例感兴趣,以及其他程序的一般情况.我可能会delete复制构造函数并添加一个单独的方法来复制对象,这是我需要复制的罕见时间.这是个好主意吗?