// template specialization
#include <iostream>
using namespace std;
// class template:
template <class T>
class mycontainer {
T element;
public:
mycontainer (T arg) {element=arg;}
T increase() {
//if(T.type==int)//how to do this or something similar?
//do this if an int
return ++element;
//if(T.type==char)
//if ((element>='a')&&(element<='z'))
//element+='A'-'a';
//return element;
}
};
私はテンプレートの専門化を書いて、char型のために別個の全体クラスのdefを行う方法を知っています。C++のテンプレートでif else型の型を処理する方法は?
しかし、1ブロックのコードですべてを処理したい場合はどうすればよいですか?
Tがintかcharかどうかを確認するにはどうすればよいですか?
のみがあった場合は、 'static_if' ...多分これは同じことに解決されます – David
あり' static_if'のための多くの提案されているが、すべてを持っていました問題。 SG8は最近、[提案の分析](https://docs.google.com/viewer?a=v&pid=forums&srcid=MDIyMDc3NjUwMTczOTM0Mjk3NjABMDI2MzM3MjkxNDM4NDQ5MzE4NDcBLWVsS1Y4dFhtdDhKATUBaXNvY3BwLm9yZwF2Mg&authuser=0)を書きました。 –
@JosephMansfieldあなたがあなたへのリンクにプレビューはありません。 – kevin