ايران ويج

نسخه‌ی کامل: دستور IF#
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
من اولین بار همین چند روز پیش دستور IF# رو دیدم و می خواستم بدونم این دستور برای چه کارهایی است

البته می دونم مربوط به دستورات شرطیه و فرقش با IF چیه؟
سلام .
من واسه vb يك مدت از بابيلون استفاده ميكردم . چيز جالبيه . همين دستور توش بود . فكر كنم ميگفت واسه كامپايل استفاده ميشه .يادم نيست .
فکر کنم در قسمت در قسمت ماژول ویژوال نمیتوان در قسمت سراسری ماژول از IF استفاده کرد ولی متوان از if# استفاده کرد
برای ترجمه شرطی ( Conditional compilation ) استفاده میشه به منظور تهیه نسخه Demo از برنامه !!!
دستورات #if... دستورات کمپایلری هستند که فقط بدرد خود کمپایلر میخوره و توی نتیجه کمپایل وجود ندارند. خود مایکروسافت به این نوع دستورات اسم Directives رو داده. ( اگه اطلاعات بیشتر خواستی اینو توی MSDN سرچ کن )
دستورات #If, #Else, #ElseIf, #End If در کل مثل دستورات If, Else, ElseIf, End If هستند. مثل اون ها یه شرط میگیرند و طبق نتیجه شرط عمل میکنن. فقط یه تفاوت اساسی دارند که دستورات #if … در زمان کمپایل ( ساخت ) و توسط کمپایلر استفاده میشند. ولی دستورات if … در زمان اجرا ( runtime ) استفاده میشند. یعنی به عبارتی دستورات #if… اصلا در برنامه کمپایل شده وجود ندارند و فقط در زمان کمپایل استفاده میشند، طبق شرطشون دستوری که مشخص کردید کمپایل میشه و خلاص. شکل کلیشون اینطوریه:
کد php:
#If expression Then
      
statements
#ElseIf expression Then
   
statements ]
...
#ElseIf expression Then
   
statements ] ]
#Else
   
statements ] ]
#End If 
مثلا توی دستور زیر :
کد php:
#Const CustomerNumber = 2
#If CustomerNumber = 1 Then
        
' statement 1
#ElseIf CustomerNumber = 2 Then
        ' 
statement 2
#Else
        
' statement 3
#End If 
البته همون طور که گفتم توی کد بالا فقط و فقط کد statement 2 توی فایل اجرایی قرار میگیره و کد های statement1 و statement3 اصلا توی فایل قرار نمیگیره.
در ضمن مکان این دستور هم مهم نیست. میتونین توی یه تابع ازش استفاده کنید یا حتی توش کلاس و تابع تعریف کنید.