не проще ли заместо вызова этой функции просто удалить объект по имени.
ObjectDelete(name);
NicE:
void Obj_Del_TL(string nm=""){
int lTip;
int obj_total=ObjectsTotal();
for(int i=obj_total;i>=0;i--){
string name=ObjectName(i);
lTip=ObjectType(name);
if (nm==name&&lTip==2){
bool tic=ObjectDelete(name);
if(!tic)
{
Print("Delete TrendLine error #",GetLastError());
return(0);}
}//if (nm==name&&lTip==2)
}//for(int i=obj_total;i>=0;i--)
//----
return(0);
}//void Obj_Del_TL(string nm="")
int lTip;
int obj_total=ObjectsTotal();
for(int i=obj_total;i>=0;i--){
string name=ObjectName(i);
lTip=ObjectType(name);
if (nm==name&&lTip==2){
bool tic=ObjectDelete(name);
if(!tic)
{
Print("Delete TrendLine error #",GetLastError());
return(0);}
}//if (nm==name&&lTip==2)
}//for(int i=obj_total;i>=0;i--)
//----
return(0);
}//void Obj_Del_TL(string nm="")
Данная функция работает, удаляет линии, но в журнале появляется запись об ошибке: object name passed to ObjectType function cannot be an uninitialized or empty string
В чем ошибка и как ее исправить?
int obj_total=ObjectsTotal(); for(int i=obj_total-1;i>=0;i--){
Удачи.
VladislavVG:
Удачи.
Спасибо, и мне тоже очень помог Ваш ответ!
Удачи.

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
int lTip;
int obj_total=ObjectsTotal();
for(int i=obj_total;i>=0;i--){
string name=ObjectName(i);
lTip=ObjectType(name);
if (nm==name&&lTip==2){
bool tic=ObjectDelete(name);
if(!tic)
{
Print("Delete TrendLine error #",GetLastError());
return(0);}
}//if (nm==name&&lTip==2)
}//for(int i=obj_total;i>=0;i--)
//----
return(0);
}//void Obj_Del_TL(string nm="")
Данная функция работает, удаляет линии, но в журнале появляется запись об ошибке: object name passed to ObjectType function cannot be an uninitialized or empty string
В чем ошибка и как ее исправить?