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

 
Alexander Laur:
Вопрос в другом: а возможен ли арбитраж на форексе?
))) "а вы верите в хренфикса?"
 
Существенным аргументом за введение * (который не озвучивался ранее) может быть следующее:
class A { public:
        virtual bool    operator==( A& ) { Print(__FUNCSIG__); return true; }
        virtual bool    operator==( A* ) { Print(__FUNCSIG__); return true; }
};
void today( A *a, A *b )
{
        a == b;            //сравниваются указатели на равенство
        a.operator==( b ); //вызывается a.operator( A* )
//нет синтаксиса вызова a.operator( A& )
}

таким образом нельзя вызвать a.operator( A& ) даже явно, что существенно

В этой связи введение * совместно с вынесением операции сравнения указателей в отдельную функцию (возможно системную) разрешит все имеющиеся неоднозначности
void future( A *a, A *b )
{
        a == b;         //вызывается a.operator( A* )
        a == *b;        //вызывается a.operator( A& )
        ::IsEqualPointer( a, b ); //сравниваются указатели на равенство
}
Было оптимально - станет идеально! 

Добавлены операторы *(Dereference/Inderection) и &(Address-of), никаких дополнительных изменений в языке делать не будем/планируем
A *a,*b;

 a== b;   // сравнение "указателей"
*a== b;   // вызов оператора ==(A *)
 a==*b;   // вызов оператора ==(A &)

// для операции != аналогично

// операция & - эквивалент(короткая запись) вызову GetPointer
 
Ilyas:
 Добавлены операторы *(Dereference/Inderection) и &(Address-of)
Класс!
 
Ilyas:

Добавлены операторы *(Dereference/Inderection) и &(Address-of), никаких дополнительных изменений в языке делать не будем/планируем
это только в MQL5 или в MQL4 тоже добавили?
 
Konstantin Karpov:
это только в MQL5 или в MQL4 тоже добавили?
Добавлено в оба языка. Но к сожалению, в ближайший билд это не попадёт.
 
Хотелось бы узнать насчёт перспективы введения property (как член класса).  Недавно задавал такой вопрос, но комментариев от разработчиков не было.  Планируется ли это,  либо мне стоит сделать опрос на форуме по поводу востребованности этой фичи?
 
Alexey Navoykov:
Хотелось бы узнать насчёт перспективы введения property (как член класса).  Недавно задавал такой вопрос, но комментариев от разработчиков не было.  Планируется ли это,  либо мне стоит сделать опрос на форуме по поводу востребованности этой фичи?
Данный вопрос на рассмотрении.
 
Вот ещё неудобство.  Когда пытаемся реализовать что-то вроде такого:
a.b().c().d();

то после первой пары скобок перестаёт появляться всплывающий список автоподстановки с названиями членов класса, и весь дальнейший текст приходится набирать уже полностью вручную/вслепую.

 
Alexey Navoykov:
Вот ещё неудобство.  Когда пытаемся реализовать что-то вроде такого:

то после первой пары скобок перестаёт появляться всплывающий список автоподстановки с названиями членов класса, и весь дальнейший текст приходится набирать уже полностью вручную/вслепую.

еще не плохо бы дополнить отладчик подсказкой типа используемой переменной, как во всех продвинутых IDE
 

bool  FileIsExist(
   const string  file_name,       // имя файла
   int           common_flag=0    // зона поиска
   );

Проверяемый файл может оказаться поддиректорией. В этом случае функция FileIsExist() возвратит false, а в переменную _LastError будет записана ошибка 5018 - "Это не файл, а директория" (смотрите пример для функции FileFindFirst).

5018 не работает в подпапках\поддиректориях

Например если

и в примере https://www.mql5.com/ru/docs/files/filefindfirst было бы

input string InpFilter="Dir1\\*"

то результат

 

а должен быть 1: Directory = Dir2\

Документация по MQL5: Файловые операции / FileFindFirst
Документация по MQL5: Файловые операции / FileFindFirst
  • www.mql5.com
Файловые операции / FileFindFirst - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
Причина обращения: