引数ではなく、それ自体の中でテンプレートを使用する関数をどのように作成しますか?同じコンストラクターと関数を持つクラスがたくさんありますが、コンストラクター内で異なることを行うので、テンプレート値がどの関数になるかをスイッチに指示するために、数値を受け入れることができる関数を作成しようとしています(これは必要です) 。どうすればいいですか?
関数自体をテンプレート化するのではなく、テンプレートを関数に配置しても機能しません
これは機能しません
#include <iostream>
template <typename T> void function(uint8_t s, std::string str1, std::string str2, std::string str3){
T var;
switch (s){
case 1:
// var = class1();
break;
// case 2 ...
// case 3 ...
default:
break;
}
}
int main() {
std::string str = "01234567";
std::cout << function(1, str, str, str) << std::endl;
return 0;
}