Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Нет компьютера под рукой? Переписывайся с друзьями с помощью телефона!
Vladislav Andruschenko
82847
Vladislav Andruschenko 2010.10.18 14:24 

Всем привет,

Сделал эксперт, возникает постоянно ошибки типо:

object name passed to ObjectSet function cannot be an uninitialized or empty string

и

object name passed to ObjectGet function cannot be an uninitialized or empty string


Я подумал ну может он ищет линии которые у меня обозначают "" - Есть такие параметры, без них никак, НО я сделал немного по другому, а именно в вызове какой либо функции приделал так:

По идее если название = "" то он должен сразу возвращать 0, но ошибки все равно идут, кто что думает по этому поводу. ?

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool ObjectGetFunc(string name,int prop_id)
  {
   if(name!="")return(ObjectGet(name,prop_id));
   else return(false);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int ObjectFindFunc(string name)
  {
   if(name!="")return(ObjectFind(name));
   else return(-1);

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
bool ObjectSetFunc(string name,int prop_id,double value)
  {
   if(name!="")return(ObjectSet(name,prop_id,value));
   else return(false);
  }
//+------------------------------------------------------------------+
bool ObjectDeleteFunc(string name)
  {
   if(name!="")return(ObjectDelete(name));
   else return(false);
  }
//+------------------------------------------------------------------+


int ObjectGetValueByShiftFunc(string name, int shift)
  {
   if(name!="")return(ObjectGetValueByShift(name,shift));
   else return(-1);

  }
Alexandr Bryzgalov
23848
Alexandr Bryzgalov 2010.10.18 14:31  
попробуй использовать NULL
Vladislav Andruschenko
82847
Vladislav Andruschenko 2010.10.18 14:38  

вместо "" ?

Alexandr Bryzgalov
23848
Alexandr Bryzgalov 2010.10.18 14:40  

ага

ЗЫ: так после каждой функции пишет?

Vladislav Andruschenko
82847
Vladislav Andruschenko 2010.10.18 14:43  

не, несовместимые типы.

Vladislav Andruschenko
82847
Vladislav Andruschenko 2010.10.18 14:44  

да вообще постоянно в журнал строчит

Alexandr Bryzgalov
23848
Alexandr Bryzgalov 2010.10.18 14:46  
Vladon:

да вообще постоянно в журнал строчит


может пытаешься изменить свойства объекта которого нет?
Alexandr Bryzgalov
23848
Alexandr Bryzgalov 2010.10.18 14:50  
int ObjectGetValueByShiftFunc(string name, int shift)
  {
   if(name!="")return(ObjectGetValueByShift(name,shift));
   else return(-1);

  }
так разве можно, функция целая, возвращает double
Alexandr Bryzgalov
23848
Alexandr Bryzgalov 2010.10.18 14:51  
bool ObjectGetFunc(string name,int prop_id)
  {
   if(name!="")return(ObjectGet(name,prop_id));
   else return(false);
и тут
Alexander
4033
Alexander 2010.10.18 14:55  
sanyooooook:
так разве можно, функция целая, возвращает double
Формально ошибки наверное не будет, дабл неявно преобразуется в инт, его и возвратит функция. Но по факту цену преобразовывать в целые ... (((
Alexandr Bryzgalov
23848
Alexandr Bryzgalov 2010.10.18 14:56  
goldtrader:
Формально ошибки наверное не будет, дабл неявно преобразуется в инт, его и возвратит функция. Но по факту цену преобразовывать в целые ... (((
я о том же, вряд ли он хочет что бы ему вернули 1 или 2 по евро ))
/ /12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий