改写函数变为类之后代码反而变快



  • 据我所知,在面向对象由于添加了RTTI机制、构造函数机制会使得程序相对于使用一个函数变得稍微慢。当然这个慢我们基本看不到。

    在实际使用中,在我改写一个非常复杂的函数为一个类的时候,反而程序变得更快了。这是什么原因造成的?

    比如我执行这个外挂函数:

    ...
    A(a, b, c, d, e, f, g, h, e, j, k, m, n, z);
    ...
    

    反而不如把他改写为类快:

    ...
    A B(a, b, c, d, e, f, g, h, e, j, k, m, n, z);
    B.calculateA();
    ...
    

    目前的认知存在于类要比公式慢一点点。不过这个认知被自身的测试推翻了。

    Any ideas?

    :sunglasses:


Log in to reply