24/12/27 06:15:40.85 bYQBZY3/.net
C++です。
ISuperインターフェースクラスを継承したCSubAクラスとCSubBクラスがあり、
それぞれのインスタンスのポインタのリストがある(必要)とします。
std::list<CSubA*> lpSubA;
std::list<CSubB*> lpSubB;
両リストの全要素に対し、ISuperにアップキャストして処理をしたく、
std::list<ISuper*> lpSuper;
lpSuper.insert( lpSuper.end(), lpSubA.begin(), lpSubA.end() );
lpSuper.insert( lpSuper.end(), lpSubB.begin(), lpSubB.end() );
for( auto& pSuper : lpSuper ) pSuperを使った処理;
のようにすればできるのですが、これを
for( auto& pSuper : lpSubAとlpSubBを連結 ) pSuperを使った処理;
のように事前のlpSuper構築なしで行う書き方はできないものでしょうか?