プリティプリントstd :: tuple
これは、プリティプリントSTLコンテナに関する以前の質問のフォローアップであり、非常にエレガントで完全に一般的なソリューションを開発することができました。 この次のステップではstd::tuple<Args...>、可変個引数テンプレートを使用して、のプリティプリントを含めたいと思います(したがって、これは厳密にC ++ 11です)。のためにstd::pair<S,T>、私は単に言う std::ostream & operator<<(std::ostream & o, const std::pair<S,T> & p) { return o << "(" << p.first << ", " << p.second << ")"; } タプルを印刷するための類似の構造は何ですか? テンプレート引数スタックをアンパックし、インデックスを渡し、SFINAEを使用して最後の要素に到達したことを検出しようとしましたが、成功しませんでした。壊れたコードであなたに負担をかけないでください。問題の説明は、うまくいけば十分に簡単です。基本的に、次の動作が必要です。 auto a = std::make_tuple(5, "Hello", -0.1); std::cout << a << std::endl; // prints: (5, "Hello", -0.1) 前の質問と同じレベルの一般性(char / wchar_t、ペア区切り文字)を含めることのボーナスポイント!