main函數(shù)放在最前面,結(jié)構(gòu)條例比較清晰,讀起來(lái)方便,先main,然后main調(diào)用的其他函數(shù)。這樣的話就需要在main前聲明被調(diào)函數(shù)。代價(jià)就是如果被調(diào)函數(shù)發(fā)生變化,譬如函數(shù)名稱、參數(shù)、返回值類型等發(fā)生變化,那么聲明的地方也要同步改變。
創(chuàng)新互聯(lián)公司網(wǎng)站建設(shè)公司是一家服務(wù)多年做網(wǎng)站建設(shè)策劃設(shè)計(jì)制作的公司,為廣大用戶提供了網(wǎng)站建設(shè)、網(wǎng)站制作,成都網(wǎng)站設(shè)計(jì),一元廣告,成都做網(wǎng)站選創(chuàng)新互聯(lián)公司,貼合企業(yè)需求,高性價(jià)比,滿足客戶不同層次的需求一站式服務(wù)歡迎致電。
如果是被調(diào)函數(shù)在main函數(shù)之前,就沒(méi)這個(gè)問(wèn)題,但讀起來(lái)就要先找到main函數(shù)。這個(gè)現(xiàn)在稍微強(qiáng)大一點(diǎn)的編輯器找個(gè)函數(shù)還是很方便的。
運(yùn)行速度沒(méi)什么區(qū)別,聲明一下只是為了編譯器能識(shí)別函數(shù)的標(biāo)識(shí)。
如果定義在調(diào)用之前,則可以不需要聲明
如果定義在調(diào)用之后,則要 先聲明,后調(diào)用
函數(shù)要先聲明后才能調(diào)用,聲明分為兩種如下:
先聲明后定義:
void b();
void a()
{
b();
}
void b()
{
}
聲明和定義在一個(gè)地方:
void b()
{
}
void a()
{
b(); //這樣才能滿足先聲明后調(diào)用
}
你編譯錯(cuò)誤的原因應(yīng)該是這樣:
void a()
{
b(); //此時(shí)b還沒(méi)有聲明
}
void b()
{
};