小言
C++でtemplateクラスのインスタンスを作るたびに,長いテンプレート引数を書かなければならないのは耐え難いものがある。と,前から思っていたわけだが,先日見たソースを参考に,C++のtemplate周りの型推論を使えば,さくさくかけるっぽい。
#includetemplate class Class { public: Class(const T& d) : data_(d) {} void write(std::ostream &out) const { out << data_; } private: T data_; }; template Class make(const T& d) { return Class (d); } int main() { Class (3).write(std::cout); std::cout << std::endl; make(3).write(std::cout); std::cout << std::endl; }
こりゃ便利。んま,関数を書かなきゃいけないから,そこら辺どうなのよ的な感はありますが。