...大约与典型的相比std::string::operator==()
?我在下面提供了更多详细信息,我不确定它们是否有任何相关性。具有复杂性或近似值的答案就足够了。谢谢!
Details:我将在列表的 for 循环中使用它来查找一些特定的实例。我估计我的平均继承水平为 3.5 个类。我正在寻找的有一个父类,一个祖父母,上面有两个“接口”,即用几个接口来抽象类virtual void abc() = 0;
.
我要寻找的类别没有子类别。
它在很大程度上取决于您的编译器、特定的类层次结构、硬件以及各种因素。你确实需要直接在您的特定应用程序中进行测量。您可以使用rdtsc或(在 Windows 上)查询性能计数器为此目的获得一个相对高精度的计时器。确保对数千个dynamic_casts的循环或雪橇进行计时,因为即使QPC仅具有 1/4μs 分辨率。
在我们的应用程序中,dynamic_cast 花费大约 1 微秒,字符串比较大约花费 3 纳秒/字符。
Dynamic_cast 和 stricmp() 都位于我们的配置文件的顶部,这意味着使用它们的性能成本非常高。 (坦率地说,在我们的工作中,让这些函数如此受重视是不可接受的,我不得不去重写一堆其他人使用它们的代码。)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)