我对 vector 有一些疑问;
- 如何以省时的方式将一个向量附加到另一端?
如果它的类型是 NODE ,如何使用 STL 特征对一个向量进行排序?(对于节点,请看下面)
前任
struct NODE { char name; .... // other things };
我对 vector 有一些疑问;
如果它的类型是 NODE ,如何使用 STL 特征对一个向量进行排序?(对于节点,请看下面)
前任
struct NODE {
char name;
.... // other things
};
operator()
它的东西),它接受元素a
并且b
应该返回 true if a < b
。要将一个向量附加到另一个向量:
myVec.insert(myVec.end(), myVec2.begin(), myVec2.end());
// if your compiler supports C++11 you can do:
myVec.insert(end(myVec), begin(myVec2), end(myVec2));
要对向量进行排序:
vector<Node> myVec;
// add elements...
sort(myVec.begin(), myVec.end());
节点应该定义 < 运算符:
bool operator<(const Node & rhs, const Node & lhs){
return rhs.name < lhs.name;
}