今天我第一次做了我的項目的64位版本。基本上它編譯,鏈接並運行正常,除了警告抱怨新的,64位size_t類型和簡單的int類型之間的不兼容性。這種情況多發生在我的代碼,這樣的情況: void func(std::vector<Something> &vec)
{
int n = vec.size();
for (int i=0; i < n; i++)
{
與conversion to ‘size_t’ from ‘int’ may change the sign of the result - GCC , C中描述的內容一樣,我反而希望確保在GCC 4.2下收到警告。 1在VS2008 SP1下同時在32位和64位編譯下標記,與禁用GCC下的警告以適應VS2008。 例如,64位的條件下,下GCC 4.2.1中,我們看到作爲警告-Wall條件下執行