ShapeList[i]
возвращает объект типа Shape
.В этом случае вы можете перегрузить operator != (char)
.
class Shape
{
//your implementation
//
public:
bool operator != (char x) const
{
// comparison logic
}
};
Кроме того, я полагаю, что у вас есть ошибка здесь:
if(ShapeList[i] != '\0')
{ i++;}
Я предполагаю, что вы хотите пропустить этот случай, но выуже увеличивает i
в цикле for
.Вы, вероятно, хотите:
if(ShapeList[i] != '\0')
{ continue;}
Как уже отмечали другие, вы должны использовать std::vector
вместо необработанного массива.Сначала я предположил, что ShapeList
был оберткой над std
контейнером.