
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
С помощью "const" выкрутился.
Это не при чем. Перегрузка оператора за счет разных типов входных параметров.
Это не при чем. Перегрузка оператора за счет разных типов входных параметров.
Да, я и это тоже имел ввиду. Я упустил из виду такую возможность, был "недостаточно хитёр".
Ещё раз спасибо. Это именно то, что надо.
И вот так вот:
будете этим пользоваться? А чем это лучше по сравнению с вызовом метода класса с круглыми скобками?
И вот так вот:
будете этим пользоваться? А чем это лучше по сравнению с вызовом метода класса с круглыми скобками?
Переносимость кода.
Хочется, чтобы нативные классы вектора и матрицы в MT5 - нормально работали нативно, а в МТ4 безо всяких изменений кода - везде подставлялись самописные аналоги.
И если для МТ5 в классе вектора используются квадратные скобки, чтобы можно было в MT4 просто заменить объявление вектора на мой класс CDBLVector, и все бы заработало - и получение значений по "квадратной скобке" и установка значений внутри вектора тоже по "квадратной скобке".
Решение "в одном случае индекс знаковый, а в другом беззнаковый" - вполне себе разумно.
А что будет если две скобки дать? ))
А что будет если две скобки дать? ))
разработчик языка матюкнётся фантазиям пользователей :-)
А что будет если две скобки дать? ))
Я понимаю так.
Во-первых, компилятору может не понравиться синтаксис, и передавать параметры придётся иначе.
Во-вторых, если речь идёт о классе, предложенном fxsaber'om, то надо глядеть, что передаётся в скобках. В зависимости от типа передаваемого значения (знаковое или беззнаковое) первая скобка вернёт либо double, либо указатель на класс. В первом случае - компилятор возмутится, у типа double нет оператора "квадратная скобка". Во втором случае - у класса будет вызван оператор "квадратная скобка", и в зависимости от типа переданного значения будет возвращёно либо double, либо указатель на объект.
Ты предложил оба знаковых параметра. А значит, в обоих случаях будет возвращено double.
В результате - компилятор будет недоволен.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Как изменить элемент массива через оператор "квадратная скобка".
fxsaber, 2023.03.12 10:34
Две квадратные скобки - это 2 размерности (в частности, для матрицы), так что там потребуется 2 индекса перекрывать, а не так как сейчас - все перезаписывается в одну ячейку. Для многомерных массивов может потребовать больше.
Две квадратные скобки - это 2 размерности (в частности, для матрицы), так что там потребуется 2 индекса перекрывать, а не так как сейчас - все перезаписывается в одну ячейку. Для многомерных массивов может потребовать больше.
Вы меня иначе трактовали. Своим примером показал отсутствие ошибки компиляции в такой конструкции. Чтобы не было иллюзиий от подобного синтаксиса.