c++17

[1/1]

  1. Ambiguous constructor error を解決するその他の方法
    このエラーは、コンパイラが複数のコンストラクタが呼び出し可能であると判断し、どのコンストラクタを選択するべきか判断できない場合に発生します。これは、以下のいずれかの理由によって起こります。同じ引数を持つコンストラクタが複数存在する。異なる引数を持つコンストラクタが存在し、コンパイラが暗黙的な型変換を行う必要がある。
  2. C++ で参照渡しで配列を受け取るファンクターを使って配列を初期化することは可能か?
    どういう意味なのかここで、initializeArray 関数は、参照渡しで受け取った配列 array を使って初期化処理を行います。つまり、関数内で array を変更すると、main 関数に戻ってきた array も変化していることになります。
  3. C++/C++17の型エイリアス:未使用の可能性を伝える`[[maybe_unused]]`属性
    [[maybe_unused]] は、コンパイラに型エイリアスが未使用である可能性を伝える属性です。これは、コンパイラが警告やエラーを出力せずに、未使用の型エイリアスを最適化することを可能にします。C++/C++17では、型エイリアスは変数のように使用できます。しかし、変数とは異なり、型エイリアスは常に使用されるわけではありません。