1

我有一个类似的列表,list<T> result;并且在 for 循环中,我在每次传递中生成另一个列表,例如

    list<T> result;
    for(int i=0;i<10;i++){
       list<T> temp=generated_list();
        // here I want to add at the beginning of the result list values from temp list
    }

如何在结果列表的开头插入生成的列表?有没有比循环或通过连接创建新然后将结果设置为结果列表更好的方法?

4

1 回答 1

5

std::list<T>::splice成员函数是做你想做的最有效的方法

list<T> result;
    for(int i=0;i<10;i++){
       list<T> temp=generated_list();
        result.splice(result.begin(), temp);
    }
于 2012-07-30T16:28:17.210 回答