2009-06-17 72 views
0

我有兩個單獨的函數bar()和foo()。我認爲是由於程序的執行流程如下:模塊化設計

輸入 - >巴() - > FOO() - >輸出

目前,礦井的同一開發團隊隊友做出一個Foo() bar()函數內部調用,這破壞了模塊化設計。儘管從模塊化設計的角度來看,比如在一個名爲procedure()的包裝函數中調用wrap bar()和foo()調用會更好,但是如果在程序堆棧上增加一個額外的函數開銷,它會花費任何性能嗎?我打算封裝程序功能如下:

procedure(inputs) 
{ 
    bar(); 
    foo(); 
} 

在此先感謝您的意見。

回答

2

函數調用的開銷(尤其是幾乎沒有局部變量)非常小,甚至不值得考慮。另外,一個好的編譯器會在適當的時候內聯調用。我始終認爲,良好的工程應該是最優先考慮的事情,因爲從良好的設計中獲得的總體效率往往比優化小事情更好,並且使整體設計成爲意大利麪條混亂。

+0

感謝您的意見。這也是我的直覺所說的最好的決定。 – stanigator 2009-06-17 18:14:49