[食記] 王品舒果,新米蘭蔬食,適合素食者用餐
這次過年期間去台南的王品舒果聚餐,順便拍一些照片記錄一下。
由於跟家人一起吃飯,一邊吃一邊拍實在不是很方便,再加上又是用我的紅米手機拍的,所以照片拍的不是很好,實際上現場的狀況比照片中更好看,如果感覺我的照片不好看,可以上王品舒果的網站看看,這裡的照片大家就參考一下就好了。
由於跟家人一起吃飯,一邊吃一邊拍實在不是很方便,再加上又是用我的紅米手機拍的,所以照片拍的不是很好,實際上現場的狀況比照片中更好看,如果感覺我的照片不好看,可以上王品舒果的網站看看,這裡的照片大家就參考一下就好了。
C++11 Lambda Expression 語法教學與範例
C++11 標準中所新增的 lambda expression 語法,可以讓函數的定義與使用更加有彈性,程式碼看起來也更簡潔。
C++11 的標準中加入了一個新的 lambda expression 語法,如果您有一陣子沒有注意最新的 C++ 標準,看到這樣的寫法可能會感覺很奇怪,以下我們將介紹 lambda expression 的使用方式與時機,並提供幾個範例作為參考。
Lambda expression 是一種匿名函數的表示方式,它可以讓程式設計師將函數的內容直接以 inline 的方式寫在一般的程式碼之中,省去另外定義函數的麻煩,使用時機跟 functor 與 function pointer 類似,一般的狀況都是使用 lambda expression 定義一個匿名的函數,然後再將此函數當作另外一個函數的傳入參數來使用。
C++11 的標準中加入了一個新的 lambda expression 語法,如果您有一陣子沒有注意最新的 C++ 標準,看到這樣的寫法可能會感覺很奇怪,以下我們將介紹 lambda expression 的使用方式與時機,並提供幾個範例作為參考。
Lambda expression 是一種匿名函數的表示方式,它可以讓程式設計師將函數的內容直接以 inline 的方式寫在一般的程式碼之中,省去另外定義函數的麻煩,使用時機跟 functor 與 function pointer 類似,一般的狀況都是使用 lambda expression 定義一個匿名的函數,然後再將此函數當作另外一個函數的傳入參數來使用。
C++ 智慧型指標(Smart Pointer):自動管理與回收記憶體
智慧型指標是 C++ 中一個常用的設計模式,它可以讓 C++ 的程式自行管理記憶體的配置與回收,避免記憶體洩漏等問題。
在 C/C++ 語言中,我們常常會使用指標(pointer)來配置或存取記憶體,一個指標變數儲存了記憶體的位址,而程式設計師就可以運用這個記憶體位址來做出各種變化,是一個非常好用的型別,甚至在某些複雜的應用上,如果沒有指標這項功能的話,可能會讓程式設計師不知道如何開發程式。
雖然指標對於 C/C++ 程式設計師而言非常重要,不過它難以管理的問題,也常常讓程式開發者頭痛,如果記憶體沒有配置得當,很容易造成懸置指標(dangling pointer)、空指標例外(null pointer exception)與記憶體洩漏(memory leak)等問題,嚴重的話會讓直接讓整個程式當掉、無法執行,而且記憶體配置與指標的問題在除錯上比較麻煩,編譯器並不會因為存取不對的記憶體位址而發出警告,必須要靠程式設計師自己小心的來處理。
在 C/C++ 語言中,我們常常會使用指標(pointer)來配置或存取記憶體,一個指標變數儲存了記憶體的位址,而程式設計師就可以運用這個記憶體位址來做出各種變化,是一個非常好用的型別,甚至在某些複雜的應用上,如果沒有指標這項功能的話,可能會讓程式設計師不知道如何開發程式。
雖然指標對於 C/C++ 程式設計師而言非常重要,不過它難以管理的問題,也常常讓程式開發者頭痛,如果記憶體沒有配置得當,很容易造成懸置指標(dangling pointer)、空指標例外(null pointer exception)與記憶體洩漏(memory leak)等問題,嚴重的話會讓直接讓整個程式當掉、無法執行,而且記憶體配置與指標的問題在除錯上比較麻煩,編譯器並不會因為存取不對的記憶體位址而發出警告,必須要靠程式設計師自己小心的來處理。
訂閱:
文章 (Atom)