Можно ли описать свой класс так, чтобы при обращении к его экземплярам они что-то возвращали?

Можно ли описать свой класс так, чтобы при вызове его экземпляров они что-то возвращали? Пример:

class A {...};

int main() {
    A a(10);
    std::cout << a; // 10
}

Ответы (1 шт):

Автор решения: HolyBlackCat

Можно перегрузить << для вашего класса.

Можно перегрузить оператор преобразования:

class A
{
  public:
    int x;
    operator int() const {return x;}
};
→ Ссылка