class Shape
{
virtual void out() = 0;
};
std::ostream& operator<<(std::ostream& os, Shape& a)
{
return os << a.out();
}
我想創建一個抽象基類,並能夠簡單地COUT < <三角/廣場等以後使用,有三角形,正方形由形狀是派生類。運營商<<沒有找到匹配
它工作正常,如果我只是說return os << "test";
所以我猜這是與a.out()沒有得到正確調用有關,我似乎無法查明問題。
你打電話給運營商? – juanchopanza 2013-05-04 16:13:13
你應該通過const引用來使用'a'。 – chris 2013-05-04 16:39:56