const void * a, const void * b을 코드에 설명하십시오. 이 상수 참조 매개 변수입니까? 즉이 함수의 내부 코드는 값을 변경할 수 없습니다. 이 매개 변수를 참조로 만드는 이유는 무엇입니까? 참조 매개 변수는 값 전달을위한 것이며 함수 정의 내에서 값이 변경 될 수 있다고 생각합니다. 매개 변수 인수에 void를 사용하는 이유는 무엇입니까?C++ 구문 : 상수 참조 매개 변수
int peak_compare(const void *a, const void *b) //Function peak_compare
{
Peaks *aa = (Peaks *)a;
Peaks *bb = (Peaks *)b;
if(aa->wt1 > bb->wt1) return -1;
if(aa->wt1 == bb->wt1) return 0;
return 1;
}
주저하지 말고 감사드립니다.
* "를 사용하는 이유를 보라 매개 변수 인수에 대해 'void'? "* - 여기에 사용 된 유형은 실제로'void * '이며이 코드 작성자 중 한 사람의 결정도 이해할 수 없습니다. – LihO
이 함수는 아마도 ['qsort'] (http://en.cppreference.com/w/cpp/algorithm/qsort)와 ['bsearch'] (http : // ko)와 같은 C 알고리즘과 함께 사용하기위한 것입니다. cppreference.com/w/cpp/algorithm/bsearch). –
이고 비 const 로의 캐스트는 악합니다. 'const Peaks * '를 사용하십시오 – WhozCraig