Как завести в параметры функции пользовательскую константу? - страница 3

 
leon_17:

А не надо?

Что такое инклудник, и что проверяется при компиляции.

 
leon_17:

А не надо?

НЕТ не надо. Достаточео сохранить изменения Ctrl+S или другим способом.

 
leon_17:

Учусь писать код на инклюдах. И насколько я понимаю, от глобальных переменных в таком случае придется полностью отказаться. Но вот, если обычные глобальные переменные можно без особых проблем передать в параметры функции, то вот как передать избранное значение перечисления (из extern enum например) до сих пор не очень понятно.   

Можете так написать



// ENUM.mqh

#define ENUMS

enum ENUM_MY
 {
  MY_PARAM_1,
  MY_PARAM_2,
  MY_PARAM_3,
  MY_PARAM_4
 };
// functions.mqh

#ifndef ENUMS
  #include "ENUM.mqh"
#endif

string select_param(ENUM_MY param)
 {
  string result="";

  if(param==MY_PARAM_1)
    result=EnumToString(MY_PARAM_1);
  if(param==MY_PARAM_2)
    result=EnumToString(MY_PARAM_2);
  if(param==MY_PARAM_3)
    result=EnumToString(MY_PARAM_3);
  if(param==MY_PARAM_1)
    result=EnumToString(MY_PARAM_4);

  return(result);
 }
// menu.mqh

#ifndef ENUMS
  #include "ENUM.mqh"
#endif

input ENUM_MY MyParam = MY_PARAM_2;
#include "ENUM.mqh"
#include "menu.mqh"
#include "functions.mqh"

Все зависит от хотелок.

 
Sergey Kolemanov:

Ну его же создать как то надо. И покажите если не трудно, где написано что компилить его не надо.

Отдельно файлы компилировать ни к чему. Если уж пишите программу то и компилируйте ее полностью. Вы ведь не библиотеки пишите, которые потом подключаете.

 
Sergey Kolemanov:

Ну его же создать как то надо. И покажите если не трудно, где написано что компилить его не надо.

Запомнить. ну или сохранить. Создать и сохранить.

 
Sergey Kolemanov:

Ну его же создать как то надо. И покажите если не трудно, где написано что компилить его не надо.

Читайте документацию. Мне лениво искать где это написано. И написано-ли вообще… Достаточно изучить что такое подключаемая библиотека и как это работает.
 
Sergey Kolemanov:

Всегда читаю.

Видимо не всё читаете. Или это считается прописными истинами и не сочли нужным вместо документации писать учебник для самых, самых…

Sergey Kolemanov:

А вот такое вот мягко говоря напрягает.

Если так напрягает, то просто не компилируйте и не будет проблем.

Вам показано как это работает, а вы упираетесь, пытаетесь что-то доказать… Как та ……… «ус……ться не поддаться»

 
Спасибо всем за помощь и примеры! Есть в чем поразбираться...