1. 程式人生 > >C++ 新特性 筆記

C++ 新特性 筆記

摘錄

constexptr

C++14嚐鮮:constexpr函式(編譯期函式)

總結來說,就是在c++11之前,要實現編譯期數值計算需要繁瑣的模板超程式設計。在c++11 中,可以是函式,在一句ruturn 語句中進行求值,函式中既不能有變數也不能有分之判斷語句,限制較多。在C++17之後,則取消了大部分限制,比如可以有變數,可以有分支判斷語句,但不能有goto,asm,try等語句。具體可以參考cppreference

準確的說,constexpr函式是一種在編譯期和執行期都能被呼叫並執行的函式。出於constexpr函式的這個特點,在C++11之後進行數值計算時,無論在編譯期還是執行期我們都可以統一用一套程式碼來實現。編譯期和執行期在數值計算這點上得到了部分統一。