class A
{
public:
A() { this.f(); } // Надо, чтобы вызывался виртуальный метод потомка.virtualvoid f() = NULL;
};
class B : public A
{
public:
virtualvoid f() { Print(__FUNCSIG__); }
};
voidOnStart()
{
B b; // pure virtual function call
}
При вызове конструктором абстрактного класса чистой виртуальной функции (прямо или косвенно) результат будет неопределённым. Однако конструкторы и деструкторы абстрактных классов могут вызывать другие функции-члены.
По ходу, вызывать 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 memberinitializer 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.
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 memberinitializer 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.
Почему код советника в void OnTesterInit() после компиляции корректно работает при оптимизации, а если залить в маркет и скачать демо, то получаю ошибку?
GI 015:57:44.021 Tester "Market\Bingo MT5.ex5"64 bit demo version
OM 015:57:44.410 Experts optimization frame expert Bingo MT5 (XAUUSD,M15) processing started
HI 315:57:44.410 Tester OnTesterInit failed. Optimization cannot be started.
HG 015:57:44.415 Experts optimization frame expert Bingo MT5 (XAUUSD,M15) processing stopped
Подозреваю, что это из-за запрета использовать демо версию на чарте?
Есть обходные пути решения этой проблемы? Или ошибка в чём то ином может быть?
Вкладка настроек Тестера стратегий. Открываем свойства тестируемого символа (жёлтая иконка с $). К примеру открыл USDJPY.
Внизу есть 3 кнопки для файла настроек:
По умолчанию;
Импорт;
Экспорт.
Файл настроек имеет расширение *.json. При экспорте автоматом подставится имя USDJPY_config.json в папку, куда хотим сохранить настройки.
Вопрос, а где находится файл по умолчанию (USDJPY_config.json) ? И есть ли такой? Ещё. Куда положить свои кастомные настройки, чтобы при запуске тестера они автоматически подхватывались терминалом?
Сегодня обновился МТ5 на 3869 билд.
Возникли проблемы с комментариями у стрелок индикаторов.
Вот код для демонстрации, наведите на любую стрелку, у меня попадает все что идет после " во всплывающий комментарий.
вот так это стало выглядеть
Когда это исправлено будет? Уже 3875 (бета) , а проблема наблюдается.
вот так выглядит у индикаторов и на графике тоже пишет все \это
Когда это исправлено будет? Уже 3875 (бета) , а проблема наблюдается.
вот так выглядит у индикаторов и на графике тоже пишет все \это
Подскажите по синтаксису, как обойти эту ошибку?
Подскажите по синтаксису, как обойти эту ошибку?
Абстрактные классы и чисто виртуальные функции
При вызове конструктором абстрактного класса чистой виртуальной функции (прямо или косвенно) результат будет неопределённым. Однако конструкторы и деструкторы абстрактных классов могут вызывать другие функции-члены.
По ходу, вызывать PURE методы из конструктора абстрактного класса не получится
Подскажите по синтаксису, как обойти эту ошибку?
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
Никак нельзя из конструктора и деструктора вызвать виртуальную функцию производного класса.
https://stackoverflow.com/questions/962132/calling-virtual-functions-inside-constructors
По ходу, вызывать PURE методы из конструктора абстрактного класса не получится
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
Никак нельзя из конструктора и деструктора вызвать виртуальную функцию производного класса.
Спасибо!
Что это за ошибка?
Получена была при работе сервиса
Почему код советника в void OnTesterInit() после компиляции корректно работает при оптимизации, а если залить в маркет и скачать демо, то получаю ошибку?
Подозреваю, что это из-за запрета использовать демо версию на чарте?
Есть обходные пути решения этой проблемы? Или ошибка в чём то ином может быть?
Коллеги, подскажите пож-ста, может кто в курсе.
Вкладка настроек Тестера стратегий. Открываем свойства тестируемого символа (жёлтая иконка с $). К примеру открыл USDJPY.
Внизу есть 3 кнопки для файла настроек:
Файл настроек имеет расширение *.json. При экспорте автоматом подставится имя USDJPY_config.json в папку, куда хотим сохранить настройки.
Вопрос, а где находится файл по умолчанию (USDJPY_config.json) ? И есть ли такой? Ещё. Куда положить свои кастомные настройки, чтобы при запуске тестера они автоматически подхватывались терминалом?
Спасибо.