好了,所以我有一個這樣的數組:C++從陣列合併重複的搜索結果
class name {
public:
string first;
int last;
name(string a, int b){
first = a;
last = b;
}
};
name arr[] { { "John", 1 }, { "Jane", 2 }, { "Dick", 3 }, { "John", 1 }, { "Jane", 2 } };
現在我只能全部打印出來是這樣的:
int main() {
int icount = sizeof(arr)/sizeof(name);
for (int i = 0; i < icount; i++){
cout << arr[i].first << " " << arr[i].last << endl;
}
}
Output will be like this:
John 1
Jane 2
Dick 3
John 1
Jane 2
不過,我需要合併任何類似的結果,這意味着如果名稱相同,我需要將它們後面的數字相加。所需的輸出應該是這樣的:
John 2
Jane 4
Dick 3
有沒有我可以用它來合併它們,或者我應該如何去這樣做的任何功能?
查找標準算法'唯一的()'或'unique_copy()'。根據您的需要,您可能需要先對容器進行分類。 – Peter