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

Question #126 Difficulty: 2

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


int foo()
  return 10;

struct foobar
  static int x;
  static int foo()
    return 11;

int foobar::x = foo();

int main()
    std::cout << foobar::x;


This question is about the lookup-rules for foo in the definition of x. Will the global foo or the member foo be chosen? If you don't know, think about some other scenarios for definition of class members, which scope would it make sense to have access to?


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.