可変個引数の 1 つの型を指定する
この記事では、可変個引数関数または可変個引数テンプレート関数に渡されるすべての引数が確実に配列、ベクトルなどの追加のデータ構造を使用せずに、同じ型のstructs.
可変個引数関数とテンプレート関数
可変個引数関数と可変個引数テンプレート関数を使用すると、関数は未知の数の引数を受け入れることができます。ただし、引数に型制約は適用されません。
型安全性の強制
すべての引数が同じ型であることを保証するには、次のようにします。手順:
例:
次のコードは、この手法を実装する方法を示しています。
使用法:
このコードf に渡されるすべての引数を ToType 型に変換できるようにします。変換できない引数がある場合、コンパイラはエラーを発行します。
後で変換するアプローチ:
あるいは、配列から配列に変換する手順がわかっている場合は、目的のタイプに応じて、次を使用できますアプローチ:
結論:
可変個引数テンプレート関数と SFINAE を利用することで、可変個引数に型安全性を適用し、すべての引数が同じであることを保証できます。タイプ。これにより、追加のデータ構造を必要とせずに、同種のデータを操作する関数を作成できます。
以上が追加のデータ構造を使用せずに、可変個引数関数またはテンプレート関数に渡されるすべての引数が同じ型であることを確認するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。