Вопросы по теме 'operator-overloading'

Посетитель и шаблонные виртуальные методы
В типичной реализации шаблона Посетитель класс должен учитывать все варианты (потомки) базового класса. Есть много случаев, когда одно и то же содержимое метода в посетителе применяется к разным методам. В этом случае идеально подошел бы шаблонный...
2029 просмотров

Почему myClassObj++++ не вызывает ошибку компиляции: '++' нуждается в l-значении так же, как и встроенный тип?
Почему myint++++ отлично компилируется с компилятором VS2008 и компилятором gcc 3.42?? Я ожидал, что компилятор скажет, что нужно lvalue, пример см. Ниже. struct MyInt { MyInt(int i):m_i(i){} MyInt& operator++() //return reference,...
243 просмотров
schedule 24.05.2024

Как переопределить оператор полиморфизма
Может ли кто-нибудь объяснить мне, что я делаю неправильно здесь? struct X { int x{}; explicit X(int x) : x(x) {} virtual X &operator++() = 0; }; struct OK : X { int ok{}; explicit OK(int ok) : X(ok), ok(ok) {} X...
694 просмотров

Избегайте конфликта операторов приведения () и оператора доступа []
Я был уверен, что это нужно спросить раньше, но не нашел. У меня есть класс, инкапсулирующий std :: string, внутри я хочу перегрузить оба приведенных типа в char * и оператор доступа []. class String { public : String(const char* s) { m_str...
124 просмотров