我不完全確定如何描述我的問題。常量函數不能用於常量引用對象嗎?
基本上我有檢查,看看如果我的矩形包含不同的矩形,但是一個功能,當我試圖用我的功能,如getX
和getY
我會見了:Error: the object has type qualifiers that are not compatible with the member function object type is: const Rectangle2D
。
我的功能如下。
const bool Rectangle2D::contains(const Rectangle2D &r) {
const double x = r.getX();
const double y = r.getY();
const double width = r.getWidth();
const double height = r.getHeight();
}
我get
功能全部是不變的,例如:
const double Rectangle2D::getX() {
return x;
}
而且在我的課它的函數定義爲const bool contains(const Rectangle2D &r)
。
如果需要更多信息,請告訴我。如果有人能幫助我或指出我朝着正確的方向,我將不勝感激。
'bool contains(const Rectangle2D&r)const'是常量函數的正確語法。 – 2013-02-25 03:59:02
...並且返回類型的'const bool'不需要。 'bool'就足夠了。同樣適用於你的其他'get()''ers。看起來你只是把你的'const'放在錯誤的地方。嘗試另一端= P – WhozCraig 2013-02-25 04:01:25
好的,謝謝你幫我清楚了。 – Battleroid 2013-02-25 04:06:11