2
これはstd::forward
どのように前方に取っSTDん右辺値引数はlvaueののparam参照
template< class T >
T&& forward(typename std::remove_reference<T>::type& t);
の宣言であると結合するどのようにしてstd::forward
における左辺値参照としてt
に、この純粋な右辺値文字列"HelloWorld!"
バインド?
std::string&& rstr = std::forward<std::string>("HelloWorld!");
'のstd ::文字列&& RSTR = ... '明示的に一時的の寿命を延ばします。 –
@DanielScheplerそうではありません!一時的なものには*直接*バインドする必要がありますが、ここではそうではありません。 – Quentin
@DanielScheplerいいえ、そうではありません。 'rstr'はこのコードのxvalueに束縛されます。ライフタイム拡張は、参照がprvalueにバインドされている場合にのみ発生します。 –