Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Собственно вопрос в теме. Никогда ранее не интересовался дефайнами, теперь хочу освоить.
Можно пару простых и пару сложных примеров ?
Больше интересует вопрос по скорости работы, есть ли смысл работать с дефайнами ?
В справке не нашёл примера создания функции, то же хотелось бы увидеть пример.
Дефайны нужны, чтобы было сразу понятно, что за величина используется в коде.
Скажем, код удаления ордеров _OrdersDelete(5) будет непонятен, когда ты будешь разбираться в коде через полгода. Почему пять ?
А вот код _OrdersDelete(MAX_QUEUE_ORDERS) - напомнит тебе, что пять - это максимальное количество ордеров в очереди, скажем, при мартине.
Но, лично я предпочитаю во всех необходимых случаях пользоваться не дефайнами, а статическими константами, поскольку в этом случае производится дополнительная проверка типов. Кроме того, дефайны - видны глобально, а статические константы - в большинстве случаев можно определить, как protected члены класса, чтобы их могли использовать только внутренние функции класса.
Правда, дефайн определяется одной строкой, а статическая константа - двумя (объявление и определение), но на мой взгляд, она все-таки гораздо более предпочтительна.
Если компиляция выполнена с включением отладочной информации, то замедление существенное - с 0 секунд до 186 для n++, до 487 для f() на цикл:
2017.07.27 22:16:08.579 callf (MXI-9.17,M15) time for n++:186 n=10000000000
2017.07.27 22:24:15.899 callf (MXI-9.17,M15) time for f():487 n=20000000000
Если компиляция выполнена с включением отладочной информации, то замедление существенное - с 0 секунд до 186 для n++, до 487 для f() на цикл:
2017.07.27 22:16:08.579 callf (MXI-9.17,M15) time for n++:186 n=10000000000
2017.07.27 22:24:15.899 callf (MXI-9.17,M15) time for f():487 n=20000000000
То же самое и с другими компиляторами, например MS C++, за все надо платить
Можно пару простых и пару сложных примеров ?
или еще