Ошибки, баги, вопросы - страница 2198
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Прошу помощи сделать простую вещь
Оверхед конечно будет, но если удобство важнее...
Спасибо! Получается, что return объекта и "=" при определении объекта идут через доп. конструктор.
Хотелось бы на самом деле наглядную таблицу где-то посмотреть, в каких случаях идут вызовы конструкторов (и каких), а в каких - операторов. Сейчас все на уровне интуиции, а она сбоит, конечно.
Хотелось бы на самом деле наглядную таблицу где-то посмотреть, в каких случаях идут вызовы конструкторов (и каких), а в каких - операторов. Сейчас все на уровне интуиции, а она сбоит, конечно.
если вы что-то возвращаете по значению, оно будет присвоено через копи-конструктор (если тот же тип) если это определение или оператор если нет.
если вы что-то возвращаете по значению, оно будет присвоено через копи-конструктор (если тот же тип) если это определение или оператор если нет.
Четко сформулировано, Спасибо!
ЗЫ Запринтовал Ваш код
Результат
Выделенные строки вызывают вопросы. Почему временные объекты не грохнулись сразу, как были использованы? Т.е. до вывода тридцати. Такие объекты грохнут мою машину, т.к. предполагается работа с десятками миллионов тиков. Каждый объект будет отжирать гигабайты ОЗУ, и совсем не хочется иметь вот такие временные объекты вместо того, чтобы сразу их убивать.
Выделенные строки вызывают вопросы. Почему временные объекты не грохнулись сразу, как были использованы? Т.е. до вывода тридцати.
обычно временные объекты удаляются не сразу, а в конце контекста. в С++ если не ошибаюсь это прямо в стандарте прописано.
хотите быстрого удаления - управляйте контекстом.
Правда придется сделать оператор =
У меня на новом графике только при повторном запуске пример заработал (все кнопки), что само по себе непонятно. Зато теперь понятно это
Внесли правки в документацию. Проблема кода была в том, что отправка графику приказа на получение событий мыши является только постановкой команды в очередь графика. И если эта очередь не обрабатывается (например в выходные), то график не может принимать указанные события. В описание ChartSetInteger добавлено примечание и поправленный пример:
Примечание
Функция является асинхронной – это означает, что функция не дожидается выполнения команды, успешно поставленной в очередь указанного графика, а сразу же возвращает управление. Изменение свойства произойдет только после обработки команды в очереди графика. Для немедленного выполнения команд в очереди графика нужно вызвать функцию ChartRedraw.
Если требуется немедленно изменить сразу несколько свойств графика, то необходимо соответствующие функции (ChartSetString, ChartSetDouble, ChartSetString) выполнить в одном блоке кода и затем вызвать один раз ChartRedraw.
Для проверки результата выполнения можно использовать функцию, запрашивающую указанное свойство графика (ChartGetInteger, ChartGetDouble, ChartSetString). При этом необходимо иметь в виду, что данные функции являются синхронными и дожидаются результата выполнения.
Пример:
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
void OnInit()
{
//--- включение сообщений о перемещении мыши по окну чарта
ChartSetInteger(0,CHART_EVENT_MOUSE_MOVE,1);
//--- принудительное обновление свойств графика гарантирует готовность к обработке событий
ChartRedraw();
}
обычно временные объекты удаляются не сразу, а в конце контекста. в С++ если не ошибаюсь это прямо в стандарте прописано.
хотите быстрого удаления - управляйте контекстом.
Правда придется сделать оператор =
Спасибо! В СД сообщили, что планируют исправить текущее поведение, но по срокам не определено.
Цветные линии (уровни) при предпросмотре (не печатал, но вероятно и на печати так) графика для печати в ЧБ.
Терминал Билд 1795
Windows 7 64
Если начать оптимизацию, а потом прервать ее спустя 30 минут, то терминал зависает, и его никак не остановить.
В диспетчере задач плодятся агенты MetaTester64(8шт).
После этого запустить терминал не удается. Надо ждать или перегружать компьютер.
у Всех так?