M

Most vexing parse

Syntactic ambiguity in C++

The most vexing parse is a counterintuitive ambiguity resolution in C++. In certain situations, the C++ grammar cannot distinguish between initializing an object parameter, declaring an object or declaring a function while specifying the function's return type.

Nº Q6916825 ★

Común · Historia

Most vexing parse

Syntactic ambiguity in C++

Texto en inglés

The most vexing parse is a counterintuitive ambiguity resolution in C++. In certain situations, the C++ grammar cannot distinguish between initializing an object parameter, declaring an object or declaring a function while specifying the function's return type.

Último precio

—

Precio mínimo

—

Mediana 7 d

—

Ventas 30 d

0

Rango 30 d

—

En circulación

0

Cotización

Ver tabla
Fechamediana MínMáxventas

Historial de ventas

Última venta
—
Media 30 d
—
Mínimo 30 d
—
Máximo 30 d
—
Ventas 7 d
0
Ventas 30 d
0

Aún no hay ventas.

Ventas anónimas: sin comprador ni vendedor. Las cifras solo cuentan ventas entre jugadores.

En Wikipedia

Texto en inglés Aún no hay artículo en tu idioma: extracto en inglés.

The most vexing parse is a counterintuitive ambiguity resolution in C++. In certain situations, the C++ grammar cannot distinguish between initializing an object parameter, declaring an object or declaring a function while specifying the function's return type. In these situations, the compiler is required to interpret the statement as the latter, even though this is rarely the programmer's intention. The problem originates from backward compatibility constraints imposed by the need for C++ to be a superset of C. C has no concept of object creation, and thus will always parse the code as a function declaration. C++ introduced syntax for object creation that inadvertently coincides with function type declaration in some cases. The term was first used by Scott Meyers in his 2001 book Effective STL. It was a common problem for C++ versions prior to C++11, which introduced an alternative syntax called uniform initialization that uses braces {} instead of parentheses (), avoiding the syntactic ambiguity.

Texto: Wikipedia en inglés, CC BY-SA 4.0. ·

Cartas cercanas

Ver la ficha

Confirmación