Ошибки, баги, вопросы - страница 2569
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
В журнал тестера что выводится при этом?
Да, и содержит мусор
Вопрос был совсем в другом. Проинициализировать пустым значением, не нулём. Если такое вообще возможно.
Ноль это число! Пустое значение в моём понимании, нет чисел, пустота.
Но ячейки памяти проинициализированы этой пустотой ))
вот, например, инициализируем различные типы "пустотой"
что имеем в HEX виде при отладке:
Со стрингом вообще прикол
но если стринг проинициализировать так
тогда результат:
ну а если вообще не инициализировать(string str;) равно как и проинициализировать =NULL, тогда то, что вам нужно - реальная пустота:
вот, например, инициализируем различные типы "пустотой"
что имеем в HEX виде при отладке:
Со стрингом вообще прикол
но если стринг проинициализировать так
тогда результат:
ну а если вообще не инициализировать(string str;) равно как и проинициализировать =NULL, тогда то, что вам нужно - реальная пустота:
Где Вы пустоту увидели? Выход за пределы массива называется. В С/С++ undefined behaviour, а здесь runtime error.
у стринга пустота(а не у массива uchar), словно его и нет, т.е. даже памяти не выделяется.
У других типов такого наблюдается. Если объявили переменную, значит память уже выделилась.
Но ведь по сути стринг это же не примитивный тип, а ссылочный, равно как и любой массив.
не могу сообразить как проверить PrintFormat
Примечание
При работе в тестере стратегий в режиме оптимизации функция PrintFormat() не выполняется.
есть мысли у кого?
не могу сообразить как проверить PrintFormat
Примечание
При работе в тестере стратегий в режиме оптимизации функция PrintFormat() не выполняется.
есть мысли у кого?
Проверить что?
Поглядеть как выводит?
В визуализаторе.
у стринга пустота, словно его и нет, т.е. даже памяти не выделяется.
У других типов такого наблюдается. Если объявили переменную, значит память уже выделилась.
Но ведь по сути стринг это же не примитивный тип, а ссылочный.
не могу сообразить как проверить PrintFormat
Примечание
При работе в тестере стратегий в режиме оптимизации функция PrintFormat() не выполняется.
есть мысли у кого?
А если StringFormat и полученную строку в файл? (для каждого прохода свой файл создавать в папке общего доступа - чтобы тестер не затёр их).
Как же нет? Память под объект string в куче выделена, а по адресу памяти, с которого начинается сам текст стоит 0х00
память выделяется только на имя и на ссылку, но не на сам объект, т.к. его пока нет. С примитивными типами такого нет, там память выделяется в момент создания переменной, даже без инициализации.
Не хочу бадаться терминологией. И так все друг друга понимают.
Все это очевидности.
А если StringFormat и полученную строку в файл? (для каждого прохода свой файл создавать в папке общего доступа - чтобы тестер не затёр их).
хороший вариант, протестирую
ЗЫ: код в очередной раз переписываю, чтобы в оптимизаторе быстрее работал (результаты было 5ч, сейчас 1,5 ч !!!)
вот сейчас наткнулся в справке на printf(), и решил проверить все свои принты, где нужно заменить....ну заменил и стала оптимизация 22 ч ....нашел где накосячил, но естественно сразу мысли, что дело все в printf() !!!
)))
попробовал проверить работу printf() в оптимизаторе так:
пока сразу получил, что ожидал:
2019.09.20 11:29:16.611 Core 1 genetic pass (0, 607) tested with error "critical runtime error 503 in OnTick function (zero divide, module Experts\)" in 0:00:00.048
ожидалось, что если написано "PrintFormat() не выполняется." то и должен это получить