C++核心準則T.68:在模板中使用{}代替()以避免歧義

T.68: Use?{}?rather than?()?within templates to avoid ambiguities
T.68:在模板中使用{}代替()以避免歧義
Reason(原因)
()?is vulnerable to grammar ambiguities.
()容易產(chǎn)生語法歧義。
Example(示例)
template
void f(T t, U u)
{
T v1(x); // is v1 a function or a variable?
T v2 {x}; // variable
auto x = T(u); // construction or cast?
}
f(1, "asdf"); // bad: cast from const char* to intEnforcement(實施建議)
flag?()?initializers
標記()初始化器。
flag function-style casts
標記C風格類型轉(zhuǎn)換。
原文鏈接
https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#t68-use--rather-than--within-templates-to-avoid-ambiguities
新書介紹
《實戰(zhàn)Python設計模式》是作者最近出版的新書,拜托多多關注!

本書利用Python 的標準GUI 工具包tkinter,通過可執(zhí)行的示例對23 個設計模式逐個進行說明。這樣一方面可以使讀者了解真實的軟件開發(fā)工作中每個設計模式的運用場景和想要解決的問題;另一方面通過對這些問題的解決過程進行說明,讓讀者明白在編寫代碼時如何判斷使用設計模式的利弊,并合理運用設計模式。
對設計模式感興趣而且希望隨學隨用的讀者通過本書可以快速跨越從理解到運用的門檻;希望學習Python GUI 編程的讀者可以將本書中的示例作為設計和開發(fā)的參考;使用Python 語言進行圖像分析、數(shù)據(jù)處理工作的讀者可以直接以本書中的示例為基礎,迅速構(gòu)建自己的系統(tǒng)架構(gòu)。
覺得本文有幫助?請分享給更多人。
關注微信公眾號【面向?qū)ο笏伎肌枯p松學習每一天!
面向?qū)ο箝_發(fā),面向?qū)ο笏伎迹?/span>
評論
圖片
表情
