本篇內(nèi)容介紹了“C++名稱該怎么寫”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
網(wǎng)站建設(shè)公司,為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計(jì)及定制網(wǎng)站建設(shè)服務(wù),專注于成都企業(yè)網(wǎng)站建設(shè),高端網(wǎng)頁制作,對成都石涼亭等多個(gè)行業(yè)擁有豐富的網(wǎng)站建設(shè)經(jīng)驗(yàn)的網(wǎng)站建設(shè)公司。專業(yè)網(wǎng)站設(shè)計(jì),網(wǎng)站優(yōu)化推廣哪家好,專業(yè)營銷推廣優(yōu)化,H5建站,響應(yīng)式網(wǎng)站。
ES.7: 通用和局部的名稱應(yīng)該簡短,特殊和非局部的名稱應(yīng)該較長。
Reason(原因)
可讀性。避免無關(guān)的非局部名稱之間的沖突。
Example(示例)
遵循慣例的,簡短的局部變量可以增加可讀性。
template // good
void print(ostream& os, const vector& v)
{
for (gsl::index i = 0; i < v.size(); ++i)
os << v[i] << '\n';
}
索引習(xí)慣上命名為i;在這個(gè)通用函數(shù)中,關(guān)于vector的含義沒有任何參考信息,因此v也是一個(gè)好名字。
template // bad: verbose, hard to read
void print(ostream& target_stream, const vector& current_vector)
{
for (gsl::index current_element_index = 0;
current_element_index < current_vector.size();
++current_element_index
)
target_stream << current_vector[current_element_index] << '\n';
}
是的,這段代碼有點(diǎn)夸張,但是我們確實(shí)看過更差的。
Example(示例)
特殊且很短的非局部名稱會(huì)擾亂代碼:
void use1(const string& s)
{
// ...
tt(s); // bad: what is tt()?
// ...
}
稍好一點(diǎn)的做法是,為非局部實(shí)體提供可讀的名稱:
void use1(const string& s)
{
// ...
trim_tail(s); // better
// ...
}
存在這樣的可能性:讀者能夠理解trim_tail的含義并且可以在查閱代碼之后能夠記住它。
Example, bad(反面示例)
長函數(shù)的參數(shù)名屬于事實(shí)上的非局部變量,應(yīng)該具有明確的含義:
void complicated_algorithm(vector& vr, const vector& vi, map& out)
// read from events in vr (marking used Records) for the indices in
// vi placing (name, index) pairs into out
{
// ... 500 lines of code using vr, vi, and out ...
}
我們推薦保持函數(shù)簡短,但是該規(guī)則不會(huì)適用于所有情況,名稱也應(yīng)該反映這種變化。
Enforcement(實(shí)施建議)
檢查局部和非局部變量的長度。注意同時(shí)考慮函數(shù)的長度。
“C++名稱該怎么寫”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!