上一篇文章總結了變量、循環/條件語句的命名以及編寫規範,這篇文章來說下函數的代碼格式規範。
一、函數格式規範
- 函數左大括號可以單獨一行或者與函數名、參數等在同一行;
- 如果左大括號與函數名參數等在同一行,左大括號與右圓括號之間有一個空格;
- 函數名與左括號之間沒有空格,左括號/右括號與參數之間沒有空格;
- 參數過多可以分成多行;
- 每行建議80個字符;
- 函數名命名規範參照普通變量命名規範;
- 函數聲明/定義處的參數變量名要對應一致;
- 參數的順序爲:先寫輸入參數,後寫輸出參數;
例如:
// <i> : 代表此處有i個空格
static rpmRC handleOneTrigger(rpmpsm input1, int inpupt2,
int output1, int output2);//太長可以拆分爲多行
{
<4>……
} // 單獨一行
static rpmRC rpmpsmNext(rpmpsm psm, pkgStage nstage)
{
<4>psm->nstage = nstage;
<4>return rpmpsmStage(psm, psm->nstage);
}//單獨一行
rpmRC rpmInstallSourcePackage(int input1, int input2,
int output1, int output2);
{
<4>……
}
void* rpmShowProgress(int input1,
int intput2,
int input3,
int input4,
int output5)
{
<4>……
}
二、函數調用
- 調用盡量使用一行;
- 如果一行放不下,可以將參數放置到多行,每一行的參數都和第一行的參數對其;
- 如果函數名太長,導致第一個參數也放置不下,參數可以單獨成行,空四個格;
- 左圓括號前/後和右圓括號前/後不要留空格;
例如:
//函數調用,單獨成行
rc = rpmtsRun(ts, NULL, ia->probFilter);
//函數調用參數分爲多行,對齊
rc = function(argument1,
argument2,
argument3);
//函數調用參數分爲多行,對齊
rc = function(argument1, argument2,
argument3, argument4);
//函數名稱太長,將參數分行
rc = functionInternationalCompetitionGoldPrize(
argument1, argument2,
argument3, argument4);
今天先總結這些,後期會繼續更新!