You've answered 0 of 152 questions correctly. (Clear)

Question #27 Difficulty: 1

According to the C++17 standard, what is the output of this program?

    #include <iostream>

struct A {
  virtual std::ostream &put(std::ostream &o) const {
    return o << 'A';

struct B : A {
  virtual std::ostream &put(std::ostream &o) const {
    return o << 'B';

std::ostream &operator<<(std::ostream &o, const A &a) {
  return a.put(o);

int main() {
  B b;
  std::cout << b;


Problems? View a hint or try another question.

I give up, show me the answer (make 3 more attempts first).

Mode : Training

You are currently in training mode, answering random questions. Why not Start a new quiz? Then you can boast about your score, and invite your friends.


Create your own!

Android app

Get Sergey Vasilchenko's CppQuiz Android app.