Ошибки, баги, вопросы - страница 1875
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Да, я ошибся. У Вас создаётся только один объект и не удаляется.
Так как, когда Вы Вызываете конструктор
CLASS() { CLASS::Ptr = CLASS::Tmp; }CLASS::Tmp ещё содержит мусор, а не адрес объекта.
2) Создается класс, new CLASS; отрабатывает конструктор CLASS()и CLASS::Ptr присваивается Null
3) Обновляется значение CLASS::Tmp указателем на new CLASS
4) Удаляется структура PTR<CLASS> CLASS::Ptr, отрабатывает деструктор, пытается удалить CLASS::Ptr (а он Null)
CLASS::Tmp ещё содержит мусор, а не адрес объекта.
Спасибо! Как-то не узрел этой очевидности.
1) Создается структура static PTR<CLASS> CLASS::Ptr;
2) Создается класс, new CLASS; отрабатывает конструктор CLASS()и CLASS::Ptr присваивается Null
3) Обновляется значение CLASS::Tmp указателем на new CLASS
4) Удаляется структура PTR<CLASS> CLASS::Ptr, отрабатывает деструктор, пытается удалить CLASS::Ptr (а он Null)
Спасибо. Только не Null, а мусор.
Было бы хорошо, если бы в режиме
не отображались стрелки от торговых операций (входы/выходы). Ни к чему они там совершенно.
1. Когда будет описание union в документации?
2. Это замена простым структурам?
3. будут ли поддерживать union приведение типа как описано для структур в документации?
вот как с помощью union можно скопировать структуру в массив char:
так можно попытаться исправить проблему тут. По сути все что было в _space скопировалось в _un_space, главное про выравнивание структур не забывать и размер массива буффера, хотя почему то менял расположение полей в структуре и данные все равно копировались нормально, но лучше все же придержаться выравнивания структур. Костыль но хоть так ))
А почему массив обнуляется дважды?