Есть блок кода, где двум переменным присваиваются значения. Например:
Price=5
Price2=7
Мне вдруг вздумалось поменять значения этих переменных местами. То есть переменной Price присвоить значение переменной Price2, а значение переменной Price2, соответственно переменной Price
Я это решил таким ниже указанным блоком.
{
Price3=Price;
Price=Price2;
Price2=Price3;
}
Целых три строчки кода потратил). Может есть какой то оператор? Типа "ТудаСюда (Price, Price2)"?
Целых три строчки кода потратил). Может есть какой то оператор? Типа "ТудаСюда (Price, Price2)"?
встроенной нет ф-ции
если часто нужно использовать, то напишите свою ф-цию обмена значениями 2-х переменных, скрипт для проверки:
void OnStart() { double x=1,y=2; Print(x,",",y); Swap(x,y); Print(x,",",y); } //+------------------------------------------------------------------+ template<typename T> void Swap(T &var1,T &var2) { T tmp=var1; var1=var2; var2= tmp; } //+------------------------------------------------------------------+
Есть блок кода, где двум переменным присваиваются значения. Например:
Price=5
Price2=7
Мне вдруг вздумалось поменять значения этих переменных местами. То есть переменной Price присвоить значение переменной Price2, а значение переменной Price2, соответственно переменной Price
Я это решил таким ниже указанным блоком.
{
Price3=Price;
Price=Price2;
Price2=Price3;
}
Целых три строчки кода потратил). Может есть какой то оператор? Типа "ТудаСюда (Price, Price2)"?
Можете всё это написать на одной строке и еще не использовать Price3 :)
Price=Price+Price2; Price2=Price-Price2; Price=Price-Price2;
{
Price3=Price;
Price=Price2;
Price2=Price3;
}
Целых три строчки кода потратил). Может есть какой то оператор? Типа "ТудаСюда (Price, Price2)"?
Кто мешает одной строкой записать? От этого ничего не поменяется:
{ Price3=Price; Price=Price2; Price2=Price3; }
Объявляется переменная для хранения даты и берется собственно дата из объекта:
datetime time; time=ObjectGet("Имя объекта",OBJPROP_TIME1);
И почему то компилятор выдает такое предупреждение:
possible loss of data due to type conversion
Объявляется переменная для хранения даты и берется собственно дата из объекта:
И почему то компилятор выдает такое предупреждение:
possible loss of data due to type conversion
datetime time = datetime(ObjectGet("Имя объекта",OBJPROP_TIME1));
Ну а лучше использовать новую функцию ObjectGetInteger().
Можете всё это написать на одной строке и еще не использовать Price3 :)
Price=Price+Price2; Price2=Price-Price2; Price=Price-Price2;
Гениально )))
Ну а лучше использовать новую функцию ObjectGetInteger().
Вы, наверное, забавляетесь? Во-первых, функция не подходит, так как она запрашивает ЦЕЛОЕ ЧИСЛО, а мне нужна ДАТА. Во-вторых функция не новая)))
Вы, наверное, забавляетесь? Во-первых, функция не подходит, так как она запрашивает ЦЕЛОЕ ЧИСЛО, а мне нужна ДАТА. Во-вторых функция не новая)))
А разве дата это не целое число?
Вы, наверное, забавляетесь? Во-первых, функция не подходит, так как она запрашивает ЦЕЛОЕ ЧИСЛО, а мне нужна ДАТА. Во-вторых функция не новая)))
ObjectGetInteger(), несмотря на свое название, возвращает не int, а long. В тип long отлично входит значение типа datetime. Кроме того, в справке напрямую написано:
ObjectGetInteger Возвращает значение соответствующего свойства объекта. Свойство объекта должно быть типов datetime, int, color, bool или char.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Есть блок кода, где двум переменным присваиваются значения. Например:
Price=5
Price2=7
Мне вдруг вздумалось поменять значения этих переменных местами. То есть переменной Price присвоить значение переменной Price2, а значение переменной Price2, соответственно переменной Price
Я это решил таким ниже указанным блоком.
{
Price3=Price;
Price=Price2;
Price2=Price3;
}
Целых три строчки кода потратил). Может есть какой то оператор? Типа "ТудаСюда (Price, Price2)"?