簡體   English   中英

哪一種是好的做法:在main中使用代碼塊或使相同代碼的功能?

[英]which one is good practice: using block of code in main or making function of same code?

實際上我想知道的是,我應該經常將函數用於短代碼還是將其放入main中,例如

main() {
    //something something
    if(condition)i++;   //This is the code for which i want to make function
}

還是我應該這樣使用

void incrementi() {
    i++;
    return;
}

main() {
    //something something  
}

哪種方法執行起來快速,易讀,或者簡而言之,什么是好的做法?

西蒙妮·佩索托(Simone Pesotto)給出了正確的答案。 但我想解釋一下原因。 每次調用一個函數時,都會創建一個激活記錄並將其與調用函數的詳細信息,指向該函數的指針,傳遞的參數,被調用函數的詳細信息一起放在編程堆棧上。這顯然需要時間。 取而代之的是,諸如增量操作之類的簡單操作僅占用一條機器指令,這比創建一個單獨的函數要便宜得多。 因此,在以下情況下會創建函數:

  1. 要做大手術
  2. 該程序在程序中重復多次

我希望這個答案有助於增進您的理解。

i ++是一個遞增變量的函數(如果您要這樣做的話)。

在這種情況下,代碼僅由條件和增量來完成,我建議您不要編寫函數,而是在需要時返回代碼行。 如果您有更多說明,建議您創建一個每次需要時都調用的函數,然后重用該段代碼

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM