constexpr

[C++] constexpr関数がインスタンス化されるとき

「P0859R0 評価されない文脈でconstexpr関数が定数式評価されることを規定」を理解するためのメモです。 以下の文章内でのconstexpr関数についてのインスタンス化という言葉はテンプレートにおけるインスタンス化と同じ意味、すなわちconstexpr関数の定義の…

[C++] constexprなメモリの確保と解放のために(C++20)

※この内容はC++20から利用可能予定の情報であり、内容が変更される可能性があります。また、constexprなアロケータを作る類の内容ではないです。 前回の記事の「コンパイル時メモリアロケーション」の所に入りきらなかったP0784の内容をまとめたものです。 c…

[C++]さらに出来るようになったconstexpr(C++20)

※この内容はC++20から利用可能になる予定の情報であり、一部の変更がC++23以降に先延ばしになるなど、内容が変更される可能性があります。 C++11でconstexprが導入されて以降、あらゆる処理をconstexprで行うことを目指すかのように(おそらく実際そう)cons…

[C++]constexprに双対数(二重数)を実装する

双対数(二重数) 双対数とは、実数に対してとなるような実数ではない要素を導入し、任意の実数a,bを用いてと表わされる数です。見ての通り複素数()と似たもので、性質を考えるときに複素数の考え方が役立ちます。 を導入すると何が嬉しいのか?テイラー展…