PDA

View Full Version : سوال: ifndef و define



irpersian20
دوشنبه 13 خرداد 1392, 15:03 عصر
#ifndef HEADERFILE_H
#define HEADERFILE_H

and at the end of the file is

#endif

سلام
امکان داره توضیح بدید؟ دقیقا هیچی نفهیدم :متعجب:
مثالی چیزی

بهروز عباسی
دوشنبه 13 خرداد 1392, 15:20 عصر
اینها دستوراتی برای کامپایل شرطی هستند و درواقع روند کامپایل رو تغییر میدن مثلاً در سیستم های 64bit نوع یک متغییر رو X و در سیستم های 32بیتی نوع همون متغییر رو به Y تغییر میدن اینطوری دیگه نیاز نیست برای سیستم های 64بیتی و 32بیتی دوبرنامه جدا بنویسی بلکه با کنترل روند کامپایل این کارو انجام میدی

http://www.cprogramming.com/reference/preprocessor/ifndef.html

مصطفی ساتکی
دوشنبه 13 خرداد 1392, 22:10 عصر
سلام
امکان داره توضیح بدید؟ دقیقا هیچی نفهیدم :متعجب:
مثالی چیزی
این دستورات در واقع معادل pragma once غیر استاندار هستش .در واقغ معادل گارد include هستش که برخورد Include ها در هنگام کپی کردن در سورس جلوگیری می کنه و فقط در فایل include استفاده میشه.

irpersian20
سه شنبه 14 خرداد 1392, 08:06 صبح
این دستورات در واقع معادل pragma once غیر استاندار هستش .در واقغ معادل گارد include هستش که برخورد Include ها در هنگام کپی کردن در سورس جلوگیری می کنه و فقط در فایل include استفاده میشه.
سلام
والا نفهمیدم

مصطفی ساتکی
سه شنبه 14 خرداد 1392, 08:31 صبح
چرا؟ اینم یک مثال با header و source

unit1.h
#idndef UNIT1_
#define UNIT1_

int sum1(int a,int b);
#endif


unit1.cpp
void sum1(int a,int b)
{
return a+b;
}