画像を描画するために、テクスチャーをvectorで積んで、使いやすいようにしようと思い立ち、
どうせならCOMポインターで管理しようと思ったら、とあるエラーが出ました
そのエラーを解決するためにvectorの中身を覗くことになったんですが、英語ばっかで意味が分からない(当たり前っすよね)
で、エラーはvectorの中の、placement newでコピーをしてる部分でした
結論から言うとCOMポインターのほうのコピーコンストラクタの引数にconstをつけてなかったのが原因なんですけど、そのコピーをしてるところで「&&」とかいうのが出てきました
「&&」・・・?なんだそれ、2重参照?
どうやらこれはタイトルで書いてますがr-value reference(日本語では右辺項参照らしいです)とかいうものらしい
こんなの見たことなかったので、理解するのにだいぶ時間がかかりました
rvalue referenceはC++のなかでも理解しにくいほうのものらしくて、いろんな人が解説を書いてくださっていてありがたかったです
まあ理解しきったわけでもないですけどw
明日、vectorを覗いてわかったことでも書こうと思います(たぶんpush_backの仕組みとかです)
P.S.
r-valueで検索してたらwikipediaのC++11のページに流れ着いたんですけど、全然知らないものばっかでした
C++11ではnullptrっていうヌルポ専用のものがあるらしい・・・!
ラムダ式とかBoostの世界のものだと思ってました