- 【初心者歓迎】C/C++室 Ver.98【環境依存OK】 [無断転載禁止]©2ch.net
476 :デフォルトの名無しさん[sage]:2016/06/27(月) 23:04:16.01 ID:0nEjv4u+ - #include <iostream>
void print(const std::string& str) { std::cout << str << std::endl; } template <typename T> void print11(T&& str) { std::cout << std::forward<T>(str) << std::endl; } int main() { std::string str{"hello world"}; print(str); print11(str); return 0; } 上記のprint関数のようなものを書きたいとき、 C++11時代の書き方ってprint11の書き方になるかと予想したのですがあってますか? 毎度このような記述が必要だなんて、にわかに信じられず 速度が求められる状況の時だけprint11のように書けばよい、ということだったりしないかな、と邪推してしまったのですが どうでしょうか。 もしくはprint11関数が間違ってるでしょうか。
|