الأحد، 25 سبتمبر 2011

Scope of variables


عندما نعرف اي متغير

1- إما نعرف المتغير خارج أي فنكشن = global
2- أو نعرف المتغير داخل الفنكشن = local



الـ global يعني ان المتغير متغير عام , يقدر اي فنكشن يتعامل معاه الـ main وغيرها من الفنكشنات الموجوده داخل البرنامج

أما فكرة الـ local  هي أننا  نعرف متغيرات داخل الفنكشن كمثال الـ main   هذا الفنكشن هو اللي يتعامل مع متغيراته فقط

أما اي فنكشن آخرى " أي غير الـ main في مثالنا هنا " ماتقدر توصل لها وتتعامل معاها 

فلو عرفنا المتغيرات قلوبل , فنقدر نتعامل معاها هالمتغيرات بدون ما يطلع لنا error

كمثال

#include <iostream> using namespace std; int z // global ..  void fun () { int a // local ..  
;
cout<< <<endl;

}
int main 
()
{
 
int a=2;               
// local ..

 
3
;
 
-1
; cout<< <<endl; fun ();
 return 
0
;
-------------------------------- 
output : 4
9
 


هنا الـ z عرفناه قلوبل يعني فنكشن fun  و الـ main  يقدروا يتعاملوا مع هالمتغير ويغيروا الاثنين من قيمتها
أما الـ a عرفناها مرتين من نوع local  وحده داخل المين والثانيه داخل فنكشن fun .. وكل واحد يتعامل مع متغير الـ a  كمتغير خاص فيه ومختلف تماما عن الآخر حتى لو كان نفس الأسم , لانه local  مايتطلع عليه الا الفنكشن المعرف فيه





 

ليست هناك تعليقات:

إرسال تعليق