我使用阿里爾Faigon的排序庫發生衝突,在這裏找到: http://www.yendor.com/programming/sort/OS X包含堆排序stdlib.h中與堆排序中排序庫
我能得到我的代碼在Linux上工作,但不幸的是,當試圖在Mac上使用GCC進行編譯時,它的默認stdlib.h包含另一個heapsort,不幸的是會導致類型錯誤的衝突。
這裏的手冊頁蘋果堆排序: http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/heapsort.3.html
註釋掉排序庫頭的堆排序引起的問題一大堆。 (赦免雙關)
我也簡單想過註釋掉我使用stdlib.h,但我使用malloc和realloc,所以根本不起作用。
任何想法?
這似乎很多向後彎曲,使這項工作。 – 2011-02-12 08:38:40
@Chris - 是的,沒有。該文件可能包含兩條`#include`行,一個用於項目自己的聲明,另一個用於所需的heapsort聲明以及一個可能佔用4行的函數。加註釋等等。該功能本身只是通過中繼呼叫。坦率地說,這可能比修改構建過程更容易,以改變用於編譯不同源文件的編譯標誌。而且,一旦完成,代碼將很少需要改變。如果你有一個更簡單的解決方案,建議。 – 2011-02-12 16:08:18