11.08.2012 / 10:52 |  | 
aNNiMON    Супервизор 
   Сейчас: Offline 
 Имя: Витёк Регистрация: 11.01.2010
   | beginner, это команды препроцессора. Первая и третья нужны для того, чтобы задавать какие-нибудь условия при компиляции. Вторая служит для установки параметров, констант и т.д. Например, ты хочешь отладить программу, чтобы куда-нибудь писался лог об ошибках, но в релизе это не надо, вот ты и пишешь: #define DEBUG 1  
....  
#ifdef DEBUG  
Log.debug("Entry point");  
#endif  
 Если написать "#define DEBUG 0", то условие препроцессора не выполнится, соответственно запись в лог не будет. Таким же образом можно создавать различные конфигурации своих программ.  __________________
   let live  | 
  11.08.2012 / 11:13 |  | 
beginner    Пользователь  
   Сейчас: Offline 
 Имя: Валентин Регистрация: 25.11.2011
   | Тоесть их можно никогда не использовать и программа из-за этого не станет хуже ?
   | 
  11.08.2012 / 11:15 |  | 
aNNiMON    Супервизор 
   Сейчас: Offline 
 Имя: Витёк Регистрация: 11.01.2010
   | beginner, да, можно не использовать.
  __________________
   let live  | 
  11.08.2012 / 11:16 |  | 
beginner    Пользователь  
   Сейчас: Offline 
 Имя: Валентин Регистрация: 25.11.2011
   | Не хочу спамить, но большое спасибо..
   | 
  11.08.2012 / 12:12 |  | 
Oak    Пользователь  
   Сейчас: Offline 
 Имя: Коля Откуда: Москва Регистрация: 02.06.2010
   | beginner,  Пожалуйста) Всегда рады помочь
  __________________
   Эль Презеденте  | 
  14.08.2012 / 13:38 |  | 
beginner    Пользователь  
   Сейчас: Offline 
 Имя: Валентин Регистрация: 25.11.2011
   | Обясните пожалуйста нубу, как работает оператор return ? Много раз встречал, и до сех пор не дошло как ео правильно использовать....    | 
  14.08.2012 / 13:44 |  | 
aNNiMON    Супервизор 
   Сейчас: Offline 
 Имя: Витёк Регистрация: 11.01.2010
   | beginner, когда программа выполняется и натыкается на оператор return, она игнорирует всевозможные операторы, которые идут дальше в методе и передаёт управление методу, который был в стеке сразу за выполняющимся. Использование: если надо досрочно выйти из метода. Пример: void showCompleteMessage(int percentage) {  
  // Если процент выполнения меньше 100, значит выводить инфо о завершении не нужно.  
  if (percentage < 100) return;  
  cout << "Operation complete!";  
}  
 А если метод должен что-то возвращать, тогда после return следует возвращаемое значение. Например:  int getPercentage() {  
  return percentage;  
}  
 Или посложнее: int getCuteGirlId() {  
  int rand = rand() % 3;  
  if (rand == 0) return 111;  
  if (rand == 1) return 2559;  
  return 2384;  
}  
  __________________
   let live  Изменено aNNiMON (14.08 / 13:50) (всего 4 раза) | 
  14.08.2012 / 13:44 |  | 
Oak    Пользователь  
   Сейчас: Offline 
 Имя: Коля Откуда: Москва Регистрация: 02.06.2010
   | beginner,  Он возвращает… :нар:
  __________________
   Эль Презеденте  | 
  14.08.2012 / 14:52 |  | 
XakepPRO    Модератор форума  
   Сейчас: Offline 
 Регистрация: 20.06.2012
   | Программа, приведенная ниже, вычисляет число «пи» – тем точнее, чем больше «круг». Она не только компилируется, но еще и работает! Однако, понять, как она работает, невозможно ни путем анализа исходного кода, ни сохранением препроцессорного вывода в отдельном файле, ни даже дизассемблированием откомпилированного файла. Это не шутка! Программа для расчета числа «пи». Да-да, именно расчета, а не вывода готовой константы посредством сопроцессора. Чем больше круг — тем выше точность расчетов. /*  
* Program to compute an approximation of pi  
* by Brian Westley, 1988  
*/  
#define _ 0xF<00? --F<00||--F-OO--:-F<00||--F-OO--;  
int F=00,OO=00;  
main(){F_OO();printf("%1.3f\n",4.*-F/OO/OO);}F_OO()  
{  
           _-_-_-_  
      _-_-_-_-_-_-_-_-_  
    _-_-_-_-_-_-_-_-_-_-_-_  
  _-_-_-_-_-_-_-_-_-_-_-_-_-_  
 _-_-_-_-_-_-_-_-_-_-_-_-_-_-_  
 _-_-_-_-_-_-_-_-_-_-_-_-_-_-_  
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_  
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_  
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_  
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_  
  _-_-_-_-_-_-_-_-_-_-_-_-_-_-_  
  _-_-_-_-_-_-_-_-_-_-_-_-_-_-_  
   _-_-_-_-_-_-_-_-_-_-_-_-_-_  
     _-_-_-_-_-_-_-_-_-_-_-_  
       _-_-_-_-_-_-_-_  
          _-_-_-_  
}  
  | 
  15.08.2012 / 04:06 |  | 
nexmean    Пользователь  
   Сейчас: Offline 
 Имя: Александр Макаров Откуда: Владивосток Регистрация: 11.08.2011
   | XakepPRO, автор случаем не потомственный индийский программист?
   |