問題タブ [c++17]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1344 参照

c++ - Trigraph は引き続き有効な C++ ですか?

digraphs と trigraphsである歴史的な好奇心については誰もが知っていますが、近年 C++ に加えられたすべての変更に興味があります: それらは有効な C++14 ですか? C++17 はどうですか?

0 投票する
3 に答える
3911 参照

c++ - std::uncaught_exception が std::uncaught_exceptions に変わるのはなぜですか?

ふと気がついた

http://en.cppreference.com/w/cpp/error/uncaught_exception

その C++17 は、 を返すをstd::uncaught_exception()、 を返すに置き換えます。boolstd::uncaught_exceptions()int

これを説明する標準への追加は次のとおりです。

http://isocpp.org/files/papers/n4259.pdf

それは根拠を提供しませんが、それは言います

[注: uncaught_exceptions() > 0 の場合、例外をスローすると std::terminate() (15.5.1) が呼び出される可能性があります。– エンドノート]

これは奇妙に曖昧です。

この変更の理由は何ですか? C++17 または標準の将来のバージョンでは、複数のアクティブな例外が可能になりますか?

0 投票する
5 に答える
229 参照

c++ - 起動時のライブラリの自動初期化

init()アプリケーションの起動時に呼び出す必要がある静的メソッドがたくさんあります。やらなければならないようなもの:

これを行う 1 つの方法は、次のように静的変数を初期化することです。

より良い代替手段はありますか?

0 投票する
3 に答える
19270 参照

c++ - ユニークなアイテムを数えるより良い方法

ベクトル内の一意のアイテムの数を数える方法を見つけただけです。これは私の最も素朴なアプローチです。

これは標準ライブラリで唯一の方法ですか、それともこれより良い方法ですか?

0 投票する
1 に答える
630 参照

c++ - 実験的::オプションの nullopt_t コンストラクター

以下に、c++ 用に提案されたオブジェクトのnullopt_tとについて説明します。nulloptoptional

[...] nullopt_t 型にはデフォルトのコンストラクターがありません。それはリテラル型でなければなりません。定数 nullopt は、リテラル型の引数で初期化されます。

この理由は、ドキュメントの op = {} 構文の章で説明されています: をop = {}明確にするために、いくつかのトリックを採用するnullopt_t必要があります。

私の質問は、ここでリテラル型が何を意味するかです。私はこのSO投稿を見つけました。したがって、別の空のクラスで十分だと思います。コンストラクタを取ることもできintますか?

最小限の適合nullopt_tクラスはどのようになりますか?

このようなもの:

またはこれ:

0 投票する
4 に答える
17957 参照

c++ - C++ 関数パラメーターの型を取得する

関数の引数の型を取得し、これらの型をテンプレート パラメーター パックとして渡す標準的な方法はありますか? 以前に行われたので、これが C++ で可能であることを知っています。

C++14 または今後の C++1z では、arg_types<F>...ここに実装する慣用的な方法があることを期待していました。

明確にするために、これを行う標準的な方法がないと主張する回答は回答ではありません。答えがない場合は、解決策が C++500 に追加されるか、宇宙の熱による死のいずれか早い方が起こるまで、質問に答えないままにしておきたいと思います :)

編集:削除された回答はPRETTY_FUNCTION、パラメータータイプの名前を取得するために使用できることを指摘しました。ただし、実際の型が必要です。それらのタイプの名前ではありません。

0 投票する
2 に答える
109 参照

c++ - std::initializer_list による == テストの C++1z 処理auto 関数での const の有無

c_NEXTで定義されていclass AskBaseます:

後でc_NEXT使用されますtemplate<typename Container> class AskUI

()?3 つの式とreturnステートメント clang++ レポートを参照すると、次のようになります。

エラーを解決するための提案。

コマンドの使用: