std::move
の次の場合は不要ですか?std :: moveの次のケースは不必要ですか?
std::string member;
obj(std::initializer_list<std::string> p_list)
: member {std::move(join(p_list))}
{}
これは、関数への参加である:あなたのjoin
機能が正気である、とstd::string
を返し、そう、std::move
は不要だろう考える
std::string join(string_initializer_list p_list) {
size_t size {};
for (auto const & s : p_list) {
size += s.size();
}
std::string output;
output.reserve(size);
for (auto const & s : p_list) {
output.append(s);
}
return output;
}
「結合」とは何ですか? – ildjarn
私は質問を編集しました;) –
どのようなシナリオではstd :: moveは役に立ちますか? –