2013-08-12 61 views
-2

我做了這個簡單的函數來檢查一天是否「有效」。表達式必須具有指向對象的類型?

void check_day() // Check if the day is valid 
{ 

    bool legal_day = false; 

    for(size_t i=0; i < legal_days.size(); ++i) 
    { 
     if (days[i] == legal_day[i]) 
     legal_day = true; 

     if (i == legal_days.size()-1 && legal_day == false) 
     days[i] = "rejected"; 
    } 
} 

然而,抱怨這一行:if (days[i] == legal_day[i])(第二I) 有沒有辦法來解決這個問題,否則我將不得不重寫一下?

+1

請修改您的問題以顯示'days'和'legal_days'的聲明。 –

+2

有一個錯誤,它應該是'if(days [i] == legal_days [i])' – unkulunkulu

+4

'legal_day'是一個'bool',但你正在索引它:'legal_day [i]'。你不能那樣做。 – juanchopanza

回答

1

legal_day的類型是bool,您正在爲它建立索引:legal_day[i]但這是不正確的。

看來,這是一個錯字...做修復它:

if (days[i] == legal_days[i]) 
    //    ^

我猜你想使用legal_days誰似乎像一個std::vector的容器。

+0

哦哇,這只是一個愚蠢的錯字(不能相信我沒有注意到),謝謝:P – Theo

相關問題