作者:Sedatefire 我開(kāi)始思考,還有什么強勁有力的理由,來(lái)支持我恪守的真理:c語(yǔ)言代碼注釋必須使用/**/. 有的! 倘若所有代碼里面的注釋用到/**/時(shí),當你要注釋掉這段代碼時(shí),如果不想忍受編譯器的嵌套報警,又懶得把一個(gè)個(gè)/**/換成//的話(huà)。那么你還有如下選擇。 1) 慎重思考下是否刪光這段代碼,如果還有些不舍,那就先"備份"(git推送)一下再刪光。因此, 理由一:使用/**/注釋代碼,會(huì )使軟件系統減少冗余的僵尸代碼,鼓勵程序員的程序備份行為。 2) 或者用編譯條件圈起來(lái),如下。 #if (XXX_ENABLE) func(a, b, c); /* 注釋 */ ...... /* 注釋 */ #endif 那么你不得不考慮xxx的命名,如何更加一目了然,再寫(xiě)點(diǎn)注釋什么的,表明對這段代碼“棄而不舍”的緣由。因此, 理由二:使用/**/注釋代碼,會(huì )鼓勵程序員刪除代碼時(shí),三思而后行,并且注明舍棄的理由。 3) 當然,偷懶的人還是會(huì )用 #if 0 #endif圈起來(lái), 如下, #if 0 func(a, b, c); /* 注釋 */ ...... /* 注釋 */ #endif 而且,不會(huì )寫(xiě)任何注釋表明刪除的理由。然而,“#if 0”是一個(gè)如此的醒目,很容易成為一個(gè)評估軟件質(zhì)量、工作績(jì)效的搜索關(guān)鍵詞。從管理的角度,這個(gè)是可以量化的。因此, 理由三: 使用/**/注釋代碼,有利于公司進(jìn)行軟件質(zhì)量控管,對程序員績(jì)效考核。 這三個(gè)理由,足夠為自己代言嗎? |