プログラムが完全にconstexpr関数(コンパイル時に計算可能)で構成されていることを考慮すると、constexpr関数を呼び出すには "レベル"の深さに限界がありますか? constexpr関数のみを使用することによって、コンパイル時に適切な条件が与えられたときにプログラム全体を計算できますか?constexpr式はどれくらい深く入れ子にできますか?
1
A
答えて
6
標準は、附属書Bのに少なくとも512の制限を推奨していますが、適合する実装は推奨に準拠する必要はありません。
- 再帰的な
constexpr
関数の呼び出し[512]。
+0
メジャーコンパイラ(GCC/Clang/MSC)の実装されている制限を持つリストがありますか? – IInspectable
+1
@IInspectable Clangの場合:http://clang.llvm.org/docs/UsersManual.html#controlling-implementation-limits GCCの場合:https://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Dialect -Options.html – Brian
関連する問題
- 1. コンストラクタをコピーする深さはどれくらいですか
- 2. Javaコールスタックの最大深度はどれくらいですか?
- 3. コンパイラインライン関数の深さはどれくらいですか?
- 4. 深く入れ子になった子iframeからナビゲートする外部iframeを引き起こします
- 5. NodeJSの約束事とコールバックの入れ子はどのくらい深いですか?
- 6. ゴールウェイの深く入れ子にされたjson
- 7. 深く入れ子になったjsonオブジェクトからデータを取得する
- 8. UIViewControllerメソッドをUIViewControllerから深く入れ子にして呼び出す
- 9. Controls.Clear()はどのくらい深くクリーンアップしますか?
- 10. 入力がどのくらい深く入力されているかをプログラム/ビデオゲームで知る方法
- 11. 深く入れ子になったプロパティによるループ - 反応
- 12. 私の[has_many:through]アソシエーションの「パス」はどれくらい深く(どのくらいのテーブルを離れて)できますか?
- 13. リダックス深く入れ子になったオブジェクト
- 14. form_深く入れ子になったルートの複数のインスタンス
- 15. 深く入れ子にされたコレクションをリセットする最も良い方法は何ですか?
- 16. PHPセッション変数を配列の中に深く入れ子にするには?
- 17. 新規/削除演算子のミスマッチエラーはどのくらい深刻ですか?
- 18. 入れ子になったIEnumerable/Arrays、深く入れ子になったプロパティにアクセスする方法
- 19. 深く入れ子になった文書をravendbで更新する
- 20. C++ 14どのくらいの頻度でconstexprを使うべきですか?
- 21. 深く入れ子になったjsonオブジェクトの価値を得るには?
- 22. プログラムのメインメソッドにどれくらいのコードを入れるべきですか?
- 23. 深く入れ子にされたオブジェクトのオブジェクトキーをlodashで変更するにはどうすればいいですか?
- 24. スライシング操作で深くまたは浅いコピーが得られますか?
- 25. 深く入れ子になった差別化された組合を比較するにはどうすればいいですか?
- 26. どのくらいの論理をビューに入れますか?
- 27. mallocedメモリページはどれくらい使用できますか?
- 28. angg2で深く入れ子になったjson値を求める方法
- 29. データフレームから深くネストされたJSONをRに入れよう
- 30. いくつの入れ子になったコントロールを作成できますか?
C++標準では、明示的な制限は指定されていません。 –
制限は、言語自体ではなく、 'constexpr'ステートメント(コンパイラメモリ、スタックオーバーフローなど)を処理するコンパイラによって決定されると思います。 – lcs
2番目の質問に関して、プログラム全体は表現ではありません。コンパイル時に計算されたプログラムはどういう意味ですか? 'int main(){return 0;}のようなものです。 } '(コンパイル時に計算された結果を返すプログラム:ゼロ)? –