Preguntas etiquetadas con explicit

2
¿Por qué #include <string> evita un error de desbordamiento de pila aquí?
Este es mi código de muestra: #include &lt;iostream&gt; #include &lt;string&gt; using namespace std; class MyClass { string figName; public: MyClass(const string&amp; s) { figName = s; } const string&amp; getName() const { return figName; } }; ostream&amp; operator&lt;&lt;(ostream&amp; ausgabe, const MyClass&amp; f) { ausgabe &lt;&lt; f.getName(); return ausgabe; } int …

1
¿Puede un operador de reparto ser explícito?
Cuando se trata de constructores, agregar la palabra clave explicitevita que un compilador entusiasta cree un objeto cuando no era la primera intención del programador. ¿Este mecanismo también está disponible para los operadores de casting? struct Foo { operator std::string() const; }; Aquí, por ejemplo, me gustaría poder convertir Fooen …

3
¿Cuál es el caso de uso para explícito (bool)
C ++ 20 introdujo explícito (bool) que selecciona condicionalmente en tiempo de compilación si un constructor se hace explícito o no. A continuación se muestra un ejemplo que encontré aquí . struct foo { // Specify non-integral types (strings, floats, etc.) require explicit construction. template &lt;typename T&gt; explicit(!std::is_integral_v&lt;T&gt;) foo(T) {} …
24 c++  c++20  explicit 
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.