是否有更好的方法将集合附加到另一个集合而不是迭代每个元素?
我有 :
set<string> foo ;
set<string> bar ;
.....
for (set<string>::const_iterator p = foo.begin( );p != foo.end( ); ++p)
bar.insert(*p);
Run Code Online (Sandbox Code Playgroud)
有没有更有效的方法来做到这一点?
CB *_*ley 92
您可以插入范围:
bar.insert(foo.begin(), foo.end());
Run Code Online (Sandbox Code Playgroud)
Edd*_*onk 10
它不是更有效但代码更少.
bar.insert(foo.begin(), foo.end());
Run Code Online (Sandbox Code Playgroud)
或者采取有效处理重复的工会.(如适用)
set<string> baz ;
set_union(foo.begin(), foo.end(),
bar.begin(), bar.end(),
inserter(baz, baz.begin()));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
37336 次 |
| 最近记录: |