Запитання з тегом «explicit»

2
Чому #include <string> запобігає помилці переповнення стека тут?
Це мій зразок коду: #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 main() { …

27
Чи можна привласнити об'єкт базового класу похідному посилання на клас із явним набором типів?
Чи можна привласнити об'єкт базового класу похідному посилання на клас із явним набором типів у C # ?. Я спробував, і це створює помилку під час виконання.

1
Чи може оператор приведення бути явним?
Що стосується конструкторів, додавання ключового слова explicitзаважає захопленому компілятору створювати об'єкт, коли це не було першим наміром програміста. Чи доступний такий механізм і для операторів кастингу? struct Foo { operator std::string() const; }; Ось, наприклад, я хотів би мати можливість відіграти Fooроль std::string, але я не хочу, щоб такий актор …

3
яка корисна скринька для явного (bool)
C ++ 20 вводить явний (bool), який умовно вибирає під час компіляції, чи буде конструктор явним чи ні. Нижче наведено приклад, який я знайшов тут . 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) {} }; foo a = 123; …
24 c++  c++20  explicit 
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.