2015-11-14 25 views
-3

C++類中的作用域錯誤。我有以下兩類:C++中的類作用域錯誤[CLOSED]

class Tire 
{ 
public: 
    Tire(); 
    void width(int); 
}; 

class Car 
{ 
public: 
    Car(); 
    void size();  
}; 

Car::Car() 
{ 
    Tire mytire; 
} 
void Car::size() 
{ 
    mytire.width(5); // generates error: "mytire was not declared in this scope" 
} 

編輯: 愚蠢的錯誤。我帶來的不便表示歉意。我只是沒有足夠的睡眠。

+0

我不得不在兩個不同的IDE中輸入它,然後才找出錯誤是什麼。 –

+0

@JamesRoot抱歉,由此給您帶來不便。 –

回答

3

mytire不是成員,它是構造函數中的局部變量。
將其聲明移到類定義中。

class Car 
{ 
public: 
    Car(); 
    ~Car(); 
    void size(); 
private: 
    Tire mytire; 
}; 

Car::Car() 
{ 
} 
+0

哦,我很傻。我對這個問題表示歉意。我住的地方很晚,我需要睡一覺。 –