我在处理字符串时总是使用const参数,但从来没有使用Integer,Pointer,类实例等。
当使用const时,我经常需要创建额外的临时变量,替换现在写保护的参数,所以我想知道:我从标记序数参数const获得任何东西吗?
解决方法 你需要了解原因,避免“货币编程”。将字符串标记为const会导致性能差异,因为您不再需要对字符串使用引用计数的互锁递增和递减,这种 *** 作实际上变得越来越昂贵,而不是越来越少,随着时间的推移,因为更多的核心意味着更多的工作以保持原子 *** 作同步。这是安全的,因为编译器强制执行“这个变量不会改变”约束。对于序数,通常是4字节或更少,没有性能增益。使用const作为优化仅在您使用大于4个字节的值类型(例如数组或记录)或引用计数类型(如字符串和接口)时有效。
但是,还有另一个重要的优点:代码可读性。如果你传递的东西为const,它对编译器没有什么区别,它仍然可以对你有所帮助,因为你可以阅读的代码,看到它的意图是让这个不被修改。这可能是重要的,如果你没有看到的代码之前(别人写它),或者如果你回来了很长时间,并不记得你在想什么,当你最初写它。
总结以上是内存溢出为你收集整理的delphi – 使用const参数和序数类型有什么优点吗?全部内容,希望文章能够帮你解决delphi – 使用const参数和序数类型有什么优点吗?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)