- 구조체 만드는 법은 다 알고 있으니 넘어가고, sort()에 전달인자로 구조체를 넘겨주게 되면, 어떤 기준으로 정렬할 것인지 알 수가 없다. 그래서 3번째 전달인자를 사용할 수 있다. 즉,
~cpp
sort(students.begin(), students.end(), compare);
~cpp
bool compare(const Student_info& x, const Student_info& y)
{
return x.name<y.name;
}
인데, compare는 함수인데 괄호는 쓰지 않는다. 괄호를 쓸 경우 그 인자까지 알아서 써줘야할 것 같은데, sort의 정확한 구조를 잘 모르는 나에겐 좀 벅찬 방법이다. 하여튼 괄호는 쓰지 않는다.
compare 함수 포인터를 넘겨주면 students vector(또는 list)내에서 값을 꺼낸다. Student_info 형이 나오겠지 그 것들을 compare 함수에 넘겨주는 거다. --
인수
- 4.3장부터는 여러 헤더파일과 소스파일로 분리해놓고 있다.