You are taking quiz cppquiz.org/q/c8vxl. After 0 of 10 questions, you have 0.00 points.

Question #127 Difficulty: 3

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

    #include <iostream>
#include <type_traits>

using namespace std;

int main()
{
  int i, &j = i;
  [=]
  {
    cout << is_same<decltype    ((j)),     int         >::value
         << is_same<decltype   (((j))),    int      &  >::value
         << is_same<decltype  ((((j)))),   int const&  >::value
         << is_same<decltype (((((j))))),  int      && >::value
         << is_same<decltype((((((j)))))), int const&& >::value;
  }();
}

Hint:

[=] captures by copy.

There's an important difference between decltype(j) and decltype((j)).

What is the const-ness of the lambda's operator()?

Answer:

Mode : Quiz

If you want to quit the current quiz and go back to training mode, click here.