Проще самому чего надо написать. Простенько получается, и со вкусом.
Со стандартными классами все уж очень монстробразно получается.
Тогда возникает вопрос, а на кой оно нужно тогда?
Боюсь, ты опять что-то напутал с ООП.
Пройдись в отладчике по функции Creаte - и погляди, почему происходит ошибка.
Проще самому чего надо написать. Простенько получается, и со вкусом.
Да я сам и начал писать. Если бы здесь были нормальные возможности рефлексии, вообще было бы удобно. А так костыльно выходит.
Боюсь, ты опять что-то напутал с ООП.
Пройдись в отладчике по функции Creаte - и погляди, почему происходит ошибка.
По ходу баг какой-то
Запись - ужасная, все расплывается, не видно текста.
Выложи исходник-то...
Ерунда, есть возможность - надо явно указать этот конструктор с параметрами. Я весьма широко использую наследование, где у наследника - нет параметров в конструкторе, а у предка - есть.
Вот, прямо мой рабочий код:
void CFlatSP_GBPCAD_PrCh_EPF::CFlatSP_GBPCAD_PrCh_EPF(double dMMRiskPercent):CChannelBackSPBinder_EPFT(CS_GBPCAD,PERIOD_M15,dMMRiskPercent)
У предка - три параметра в конструкторе, у потомка - один параметр. Можно и без праметров сделать.
Говорю ж - ты с ООП напутал.
Прежде чем обвинять производителей - подтяни свой ООП-скилл.
Запись - ужасная, все расплывается, не видно текста.
Выложи исходник-то...
Просто у меня разрешение очень высокое, поэтому так..
Единственное, здесь нужно будет изменить наследование класса ZZHandling с indCustom на CiCustom как в стандартной библиотеке, что бы работало. Я переименовывал т.к. было нужно.
Ерунда, есть возможность - надо явно указать этот конструктор с параметрами. Я весьма широко использую наследование, где у наследника - нет параметров в конструкторе, а у предка - есть.
Вот, прямо мой рабочий код:
void CFlatSP_GBPCAD_PrCh_EPF::CFlatSP_GBPCAD_PrCh_EPF(double dMMRiskPercent):CChannelBackSPBinder_EPFT(CS_GBPCAD,PERIOD_M15,dMMRiskPercent)
У предка - три параметра в конструкторе, у потомка - один параметр. Можно и без праметров сделать.
Говорю ж - ты с ООП напутал.
Так у меня в классе ZZHandling конструкторе 2 параметра, а без параметров нет конструктора. От этого класса ZZHandling я наследуюсь. И вот так не получается:
class ZigZag : public ZZHandling { }
А ваш пример из одной строки не очень понятен.
Так у меня в классе ZZHandling конструкторе 2 параметра, а без параметров нет конструктора. От этого класса ZZHandling я наследуюсь. И вот так не получается:
Речь про объявление самого конструктора. Там, где описываешь конструктор - надо указать все параметры в предке и в потомке.
Должно быть что-то вроде:
ZigZag::ZigZag():ZZHandling(int iParameter1,int iParameter2) { // Тело конструктора };
То есть, в конструкторе ZigZag - параметров нет, а в конструкторе ZZHandling - два параметра, и понятное дело - эти параметры при вызове должны быть уже известны.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Есть класс CiCustom, который наследует класс CIndicator. Я решил своим классом, который работает с канкретным индикатором наследоваться от CiCustom, чтобы была возможность использоваться все средства по созданию и работе с индикатором нативно, наследуя все возможности по иерархии. Но, оказалось, что ничего не вышло. Функция Create из класса CIndicator возвращает что мол ошибка при создании индикатора, причём, постоянно.
Тем не менее, если пойти другим путём и воспользоваться функцией indicatorCreate, то всё работает. Так вот это удивительно. Ведь параметры, которые принимают эти оба метода, как Create, так и indicatorCreate абсолютно идентичны. Сигнатура этих функций идентична. Там промахнуться не возможно. Разве что возвращает одна факт создания, а другая хэндл. Ну и если пользоваться функцией из класса CIndicator, то нужна наследовать пачку классов по иерархии. А если не пользоваться - не нужно. Тогда возникает вопрос, а на кой оно нужно тогда?