C で qsort を使用して、比較関数を渡します。
int cmp(const void*, const void*);
qsort のプロトタイプは a を期待するint (* )(const void* , const void*)
ので、次のように呼び出します。
qsort(..., cmp);
ただし、次の呼び出しも同様に有効です。
qsort(..., &cmp);
これは、C++ で静的メンバー関数を渡した場合に行う必要があることです。Kernighan & Ritchie (第 2 版、5.11「関数へのポインター」p119) は、「[cmp] は関数であることがわかっているため、& 演算子は、配列名の前に必要ないのと同様に、必要ありません。 "
他の誰かがこれに少し不快に感じますか (特にタイプセーフに関して)?