Ошибки, баги, вопросы - страница 3372

 
fxsaber #:
Подскажите по синтаксису, как обойти эту ошибку?
https://stackoverflow.com/questions/962132/calling-virtual-functions-inside-constructors
Calling virtual functions inside constructors
Calling virtual functions inside constructors
  • 2009.06.07
  • David Coufal David Coufal 6,011 5 5 gold badges 28 28 silver badges 30 30 bronze badges
  • stackoverflow.com
Suppose I have two C++ classes: If I write the following code: One might expect that is set to 2. It turns out that is set to 1. Why?
 
fxsaber #:
Подскажите по синтаксису, как обойти эту ошибку?

Абстрактные классы и чисто виртуальные функции

При вызове конструктором абстрактного класса чистой виртуальной функции (прямо или косвенно) результат будет неопределённым.  Однако конструкторы и деструкторы абстрактных классов могут вызывать другие функции-члены.

По ходу, вызывать PURE методы из конструктора абстрактного класса не получится

 
fxsaber #:
Подскажите по синтаксису, как обойти эту ошибку?

When a virtual function is called directly or indirectly from a constructor or from a destructor (including during the construction or destruction of the class’s non-static data members, e.g. in a member initializer list), and the object to which the call applies is the object under construction or destruction, the function called is the final overrider in the constructor’s or destructor’s class and not one overriding it in a more-derived class. In other words, during construction or destruction, the more-derived classes do not exist.

virtual function specifier - cppreference.com

Никак нельзя из конструктора и деструктора вызвать виртуальную функцию производного класса.

 
Vladislav Boyko #:

По ходу, вызывать PURE методы из конструктора абстрактного класса не получится

Vladimir Simakov #:

When a virtual function is called directly or indirectly from a constructor or from a destructor (including during the construction or destruction of the class’s non-static data members, e.g. in a member initializer list), and the object to which the call applies is the object under construction or destruction, the function called is the final overrider in the constructor’s or destructor’s class and not one overriding it in a more-derived class. In other words, during construction or destruction, the more-derived classes do not exist.

virtual function specifier - cppreference.com

Никак нельзя из конструктора и деструктора вызвать виртуальную функцию производного класса.

Спасибо!

 

Что это за ошибка?

2023.08.17 14:22:38.404 MQL5    VirtualAlloc failed in large allocator, size=65616

Получена была при работе сервиса

2023.08.17 14:22:38.454 Services        service 'Avito_service' stopped
 

Почему код советника в void OnTesterInit() после компиляции корректно работает при оптимизации, а если залить в маркет и скачать демо, то получаю ошибку?

GI      0       15:57:44.021    Tester  "Market\Bingo MT5.ex5" 64 bit demo version
OM      0       15:57:44.410    Experts optimization frame expert Bingo MT5 (XAUUSD,M15) processing started
HI      3       15:57:44.410    Tester  OnTesterInit failed. Optimization cannot be started.
HG      0       15:57:44.415    Experts optimization frame expert Bingo MT5 (XAUUSD,M15) processing stopped

Подозреваю, что это из-за запрета использовать демо версию на чарте?

Есть обходные пути решения этой проблемы? Или ошибка в чём то ином может быть?

 

Коллеги, подскажите пож-ста, может кто в курсе.

Вкладка настроек Тестера стратегий. Открываем свойства тестируемого символа (жёлтая иконка с $). К примеру открыл USDJPY.



Внизу есть 3 кнопки для файла настроек:

  1. По умолчанию;
  2. Импорт;
  3. Экспорт.

Файл настроек имеет расширение *.json. При экспорте автоматом подставится имя USDJPY_config.json в папку, куда хотим сохранить настройки.

Вопрос, а где находится файл по умолчанию (USDJPY_config.json) ? И есть ли такой? Ещё. Куда положить свои кастомные настройки, чтобы при запуске тестера они автоматически подхватывались терминалом? 

Спасибо.

 
Валидация советника в маркете идёт со вчерашнего дня - как отменить?
 
Ошибка при получении остатка от деления дробных чисел (с целочисленными работает нормально)
void OnStart()
  {
   double a = 0.71 % 5;
  }
 
Alexandr Sokolov #:
Ошибка при получении остатка от деления дробных чисел (с целочисленными работает нормально)

Используйте 

double  MathMod( 
   double  value,      // делимое 
   double  value2      // делитель 
   );
и будет вам счастье.
Причина обращения: