gpt4 book ai didi

c++ - 使用字符串识别对象 : what's the purpose?

转载 作者:行者123 更新时间:2023-11-28 01:09:47 25 4
gpt4 key购买 nike

例如 OGRE3D 使用字符串来标识对象,因此每次代码使用对象的名称(字符串)对对象执行某些操作时,它都必须执行字符串操作,并且由于 3D 引擎对速度非常敏感,因此如何这是一个很好的方法吗?

当计算机必须对字符串进行操作时,它会按顺序执行,一个字节接一个字节,因此如果字符串较长,它会花费更多的 CPU 周期...

在代码中使用纯变量名而不是使用字符串标识符会不会更快?

最佳答案

是的,在代码中使用纯变量名而不是使用字符串标识符会更快。但有时您在构建时不知道这些名称。然后您需要一种动态处理名称的方法。另一种方法可能是只使用原始整数而不是字符串。可以使用散列或字符串查找表生成整数值。但是使用字符串不会严重减慢你的程序,除非你有很多非常长的字符串,它们都有相同的起始字符,最后只有几个不同的字符。通常,比较字符串应该相对较早地导致错误结果,并且只有对于“真正匹配”,才需要完全比较两个字符串。然而,比较一些字符串以在组织良好的搜索结构(如树等)中查找对象并不是 3D 引擎的瓶颈,因此不应成为优化问题的一部分

关于c++ - 使用字符串识别对象 : what's the purpose?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4013250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com