在程式離開範圍時,自動執行動作:GSL finally

之前已經大概介紹過 C++ Guidelines Support Library 這個簡單的函式庫了;當時,也有簡單地介紹一下裡面的 owner<T>

而這一篇,則是來講一下一個 Heresy 個人覺得還滿實用的東西:finally

當在寫程式的時候,常常會在某個地方,需要建立很多臨時性的資源、來做計算、儲存,而當結果計算出來後,這些東西就需要被釋放掉。

如果程式的路線很簡單,只有一條線的話,其實很好處理、不太會成為問題;但是如果是一個函式,可能會有好幾條路線、甚至會提早 return、結束函式的話,要怎麼比較好地去把這些臨時性的資源清理掉,就會是個問題了。

閱讀更多»

C++ Guidelines Support Library

Heresy 在 2015 曾經簡單介紹過《C++ Core Guidelines》(官方)了。而實際上,他的整份文件很多條目,老實說要全部看過(理解)要相當的時間,也有相當的難度,所以 Heresy 後來其實也沒很認真去碰。

如果對內容有興趣的話,可以參考「Modernes C++」這個網站(連結),他有針對 C++ Core Guidelines 撰寫了大量的文章(分類),應該算是可以輔助閱讀的資料。

閱讀更多»

C++ Core Guidelines

「C++ Core Guidelines」是在 CppCon 2015 這個 C++ 的 conderence(官網)被提出來的,這個專案目前還在發展中,它的內容都放在 https://github.com/isocpp/CppCoreGuidelines 裡。

這個「Guidelines Prohect」的主要目的,是希望可以盡量針對問題,提出好的答案、讓大家可以參考、更有效率地寫出更好的 C++ 程式。

而最主要的介紹,應該是可以參考 Bjarne Stroustrup(C++ 之父、維基百科)的《Writing good C++14》(投影片YouTube)這份簡報。其他在 talks 資料夾(連結)中,也有其他的投影片,在 docs 資料夾(連結)中,目前則有兩份文件。

閱讀更多»