Updated T.68 example

This commit is contained in:
Herb Sutter 2021-01-21 11:46:01 -08:00
parent 520ac9c695
commit 3c1991b87b

View File

@ -18058,16 +18058,16 @@ When `concept`s become widely available such alternatives can be distinguished d
##### Reason
`()` is vulnerable to grammar ambiguities.
`()` is vulnerable to grammar ambiguities.
##### Example
template<typename T, typename U>
void f(T t, U u)
{
T v1(x); // is v1 a function or a variable?
T v2 {x}; // variable
auto x = T(u); // construction or cast?
T v1(T(u)); // mistake: oops, v1 is a function not a variable
T v2{u}; // clear: obviously a variable
auto x = T(u); // unclear: construction or cast?
}
f(1, "asdf"); // bad: cast from const char* to int