You can write a customize sort functor when using the stl, which sort the
index of the students, like:struct SortStudent : public
binnary_function<bool, int, int> {
SortStudent(Class *cl) : cl_(cl) {
}
bool operator() (int i, int j) {
int32 score1 = cl_->student(i).score();
int32 score2 = cl_->student(j).score();
return score1 < score2;
}
Class *cl_;
};
Class *cl; // Where you can get the Class instance.
int num_student = cl->student_size();
vector<int> student_indice;
for (int i = 0; i < num_student; ++i) {
student_indice.push_back(i);
}
sort(student_indice.begin(), student_indice.end(), SortStudent(cl));
2009/7/29 李海波 <[email protected]>
>
> example:
> ==========.proto file ============
> message Class{
> message Student{
> required string name = 1;
> required int32 score = 2;
> }
>
> repeated Student student = 1;
> }
> =============================
>
> I want to sort students of the class by score,how can i do?
> >
>
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Protocol Buffers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/protobuf?hl=en
-~----------~----~----~----~------~----~------~--~---