You've answered 0 of 175 questions correctly. (Clear)
Question #347 Difficulty:
According to the C++23 standard, what is the output of this program?
#include <iostream>
#include <type_traits>
template <typename T>
void foo(T& x)
{
std::cout << std::is_same_v<const int, T>;
}
template <typename T>
void bar(const T& x)
{
std::cout << std::is_same_v<const int, T>;
}
int main()
{
const int i{};
int j{};
foo(i);
foo(j);
bar(i);
bar(j);
}
Hint:
If a parameter is of a reference type, the type referred to is used for type deduction. Also, it is allowed to deduce an argument type to a more cv-qualified type.
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.
Contribute
Android app
Get Sergey Vasilchenko's CppQuiz Android app.
C++ Brain Teasers
Get the book, support the site!