Как обратиться к переменной из любой части программы которая находится внутри функции, другими словами как вернуть 2 результата из функции? - страница 3

 
Dmitry Fedoseev:

Еще вот - https://www.mql5.com/ru/forum/306335#comment_10932397

Какие-то выдумки

Давайте-ка я погляжу все ваши сообщения, коих очень много не очень адекватных - лишь выставление напоказ завышенного собственного эго и пренебрежительное отношение почти ко всем участникам форума, на посты которых вы пишете свои опусы, и вместе решим - они достойны бана или нет... Не ищите в чужом глазу... Добро?

 
Dmitry Fedoseev:

Вы имеете право создавать темы в любом количестве. Никакими правилами не ограничивается. Главное, что бы они были по теме форума.

Тема, это нечто большее, чем задавание одного вопроса, ответ на который уже имеется на форуме не в единичном количестве.

Таких тем с одним вопросом можно насоздавать тысячи, вот как только вопрос -так сразу и тема. Это не нормально

Зачем тогда созданы ветки "Вопросы от начинающих MQL".

Все одноразовые вопросы задавать можно и нужно там.

 
Vitaly Muzichenko:

Тема, это нечто большее, чем задавание одного вопроса, ответ на который уже имеется на форуме не в единичном количестве.

Таких тем с одним вопросом можно насоздавать тысячи, вот как только вопрос -так сразу и тема. Это не нормально

Зачем тогда созданы ветки "Вопросы от начинающих MQL".

Все одноразовые вопросы задавать можно и нужно там.

Тоже выдумывание собственных правил.

 
Artyom Trishkin:

Давайте-ка я погляжу все ваши сообщения, коих очень много не очень адекватных - лишь выставление напоказ завышенного собственного эго и пренебрежительное отношение почти ко всем участникам форума, на посты которых вы пишете свои опусы, и вместе решим - они достойны бана или нет... Не ищите в чужом глазу... Добро?

Давайте, поглядите. Очень интересно, где такие найдете... и кому тут надо что в глазах искать.

 
Seric29:

Идея такая есть функция

int Funcziya(int qw.in y)

{int fa=0,fs=0,fd=0;

расчёты

return(fd);

}

далее происходит вызов данной функции в нужной части программы, из функции возвращается результат, а также нужно обратиться к переменным, которые находятся внутри этой функции, нужно обратиться к переменным fa и fs у которых тоже будут значения и всё это нужно использовать. Объявить переменные глобально нет возможности. Может это можно сделать с помощью ссылок и указателей или чего-то подобного кто что может посоветовать?

не знаю как вы свою функцию используете (её назначение), но как вариант можно из неё сделать класс и в объектах хранить состояние

class FunctionWithState {

public:

    int state;

public:

    FunctionWithState() {  Reset();  }

    int State() { return state; }
    int Reset() { state=0; }

    int Execute(int a,int b) {

        state+=a-b;

        return a+b;

    }

};

 
Dmitry Fedoseev:
Вот так можно:
int Funcziya(int qw,in y,int & fa,int & fs, int & fd){

fa=0;
fs=0;
fd=0;

расчёты

return(fd);

}

Значит я вызываю функцию, дальше по вашей идее какие аргументы здесь нужно заполнять qw и y, а оставшиеся аргументы ( fa,fs,fd) просто пока пропускаешь они будут рассчитаны, как к ним обратиться к переменной fa и переменной fs, эта тема ссылок и указателей немного сложновата для меня пока? 

 
Seric29:

Значит я вызываю функцию, дальше по вашей идее какие аргументы здесь нужно заполнять qw и y, а оставшиеся аргументы ( fa,fs,fd) просто пока пропускаешь они будут рассчитаны, как к ним обратиться к переменной fa и переменной fs, эта тема ссылок и указателей немного сложновата для меня пока? 

 
struct STest
  {
   int   a;
   int   b;
  };

STest Foo(int a, int b)
{
   STest res={0};
   res.a=a+b;
   res.b=b-a;
   return res;
}
 
Seric29:

Значит я вызываю функцию, дальше по вашей идее какие аргументы здесь нужно заполнять qw и y, а оставшиеся аргументы ( fa,fs,fd) просто пока пропускаешь они будут рассчитаны, как к ним обратиться к переменной fa и переменной fs, эта тема ссылок и указателей немного сложновата для меня пока? 

См. у некоторых переменных знак &:

int & fd

Если в функции значение этой переменной будет изменено, оно изменится и в той переменной, которая была передана в функцию при вызове функции.

Тут уже и пример есть https://www.mql5.com/ru/forum/306335/page3#comment_10940701

 
Dmitry Fedoseev:

А может хватит придумывать свои правила?

++++

Причина обращения: