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

Question #338 Difficulty: 3

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

    #include <type_traits>
#include <iostream>
#include <string>

template<typename T>
int f()
{
    if constexpr (std::is_same_v<T, int>) { return 0; }
    else { return std::string{}; }
}

int main()
{
    std::cout << f<int>();
}

Hint:

std::string{} does not depend on a template parameter. But it's not a compilation error!

Answer:

Mode : Quiz

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