ಸಿ ++ ವೇರಿಯಬಲ್ ಸ್ಕೋಪ್


ಕೋಡ್ ಬರೆಯುವಾಗ ನಿಮಗೆ ವಿವಿಧ ಅಸ್ಥಿರಗಳು ಬೇಕಾಗುತ್ತವೆ. ಅಸ್ಥಿರಗಳು ಪ್ರವೇಶಿಸಬಹುದಾದ ತಮ್ಮದೇ ಆದ ಗಡಿಗಳನ್ನು ಹೊಂದಿವೆ. ಆ ಗಡಿಗಳ ಹೊರಗೆ ಅಸ್ಥಿರಗಳು ಅವುಗಳ ಮೌಲ್ಯಗಳನ್ನು ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳುವುದಿಲ್ಲ. ಈ ಗಡಿಗಳನ್ನು ವೇರಿಯಬಲ್ ವ್ಯಾಪ್ತಿ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಅಸ್ಥಿರಗಳ ಜೀವಿತಾವಧಿ ಮತ್ತು ವ್ಯಾಪ್ತಿಯನ್ನು ತಿಳಿದುಕೊಳ್ಳುವುದು ಬಹಳ ಮುಖ್ಯ. ಅಸ್ಥಿರ ವ್ಯಾಪ್ತಿಯನ್ನು ಎರಡು ವರ್ಗಗಳಾಗಿ ವಿಂಗಡಿಸಬಹುದು:

  1. ಜಾಗತಿಕ ಅಸ್ಥಿರಗಳು
  2. ಸ್ಥಳೀಯ ಅಸ್ಥಿರಗಳು

ಜಾಗತಿಕ ಅಸ್ಥಿರ

ಜಾಗತಿಕ ಅಸ್ಥಿರಗಳು ಅಸ್ಥಿರಗಳಾಗಿದ್ದು, ಇದನ್ನು ಹೆಚ್ಚಾಗಿ ಹೊರಗೆ ಘೋಷಿಸಲಾಗುತ್ತದೆ main() ಕಾರ್ಯ. ವೇರಿಯಬಲ್ ಸ್ಕೋಪ್ ಎನ್ನುವುದು ವೇರಿಯೇಬಲ್ ಅನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಿದ ಪೂರ್ಣ ಫೈಲ್ ಆಗಿದೆ. ಜಾಗತಿಕ ವೇರಿಯಬಲ್ ಅನ್ನು ಈ ಕೆಳಗಿನಂತೆ ವ್ಯಾಖ್ಯಾನಿಸಬಹುದು:

//include a header file from Standard Library
#include 
using namespace std;
//This is GLOBAL VARIABLE
int weight;
//the work of the program starts from function called  main
int main()
{
	weight =  3; //Now weight is  equal to 3
	cout  << "Weight is  " << weight  << endl;
	cin.ignore();
	return 0;
}

ನೀವು ಕಾರ್ಯಗಳು ಮತ್ತು ಹೆಚ್ಚು ಸುಧಾರಿತ ಸಿ ++ ವಿಷಯಗಳನ್ನು ಕಲಿಯುವಾಗ ಗ್ಲೋಬಲ್ ವೇರಿಯಬಲ್ ಸ್ಕೋಪ್ ಅನ್ನು ನೀವು ಚೆನ್ನಾಗಿ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವಿರಿ. ಸ್ಥಳೀಯ ವೇರಿಯೇಬಲ್ನ ಅರ್ಥವನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ನಿಮಗಾಗಿ ಈಗ ಹೆಚ್ಚು ಮುಖ್ಯವಾಗಿದೆ.

ಸ್ಥಳೀಯ ಅಸ್ಥಿರಗಳು

ಜಾಗತಿಕ ಅಸ್ಥಿರಗಳನ್ನು ಪೂರ್ಣ ಫೈಲ್‌ನಲ್ಲಿ ಪ್ರವೇಶಿಸಬಹುದು. ಆದರೆ ಸ್ಥಳೀಯ ಅಸ್ಥಿರಗಳನ್ನು ಪೂರ್ಣ ಫೈಲ್‌ನಲ್ಲಿ ಪ್ರವೇಶಿಸಲಾಗುವುದಿಲ್ಲ. ಸ್ಥಳೀಯ ವೇರಿಯೇಬಲ್ನ ವ್ಯಾಪ್ತಿಯು "{" ಮತ್ತು "}" ನಡುವೆ ವ್ಯಾಖ್ಯಾನಿಸಲಾದ ಸೂಚನೆಯ ಬ್ಲಾಕ್ ನಡುವೆ ಇರುತ್ತದೆ. ಈ ಉದಾಹರಣೆಯನ್ನು ನೋಡೋಣ:

int main()
{
	{
		double price  = 2.0,
		height  = 3.1,
		length  = 2.4;
		cout << "Price is " << price << endl;
		cout << "Length is " << length << endl;
		cout << "Height is " << height  << endl;
	}
	weight = 3; //Now weight is equal to 3
	cin.ignore();
	return 0;
}

ನೀವು ನೋಡುವಂತೆ, ಮುಖ್ಯ ಕಾರ್ಯದಲ್ಲಿ ಬೆಲೆ, ಎತ್ತರ ಮತ್ತು ಉದ್ದವನ್ನು ಪ್ರತ್ಯೇಕ ಬ್ಲಾಕ್‌ನಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸಲಾಗಿದೆ. ಮತ್ತು ಎಲ್ಲಾ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಒಂದೇ ಬ್ಲಾಕ್ನಲ್ಲಿ ನಡೆಸಲಾಗುತ್ತದೆ. ಈ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಚಲಾಯಿಸಲು ಪ್ರಯತ್ನಿಸಿ. ಇದನ್ನು ಯಾವುದೇ ತೊಂದರೆಗಳಿಲ್ಲದೆ ಕಾರ್ಯಗತಗೊಳಿಸಲಾಗುತ್ತದೆ. ಈಗ, ನಮ್ಮ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಈ ಕೆಳಗಿನ ರೀತಿಯಲ್ಲಿ ಮಾರ್ಪಡಿಸಿ:
int main()
{
	{
		double price = 2.0,
		height = 3.1,
		length = 2.4;
		cout << "Price is " << price << endl;
		cout << "Length is " << length << endl;
		cout << "Height is " << height << endl;
	}
	weight = 3; //Now weight is equal to 3
	cout << "Price is " << price << endl;
	cout << "Length is " << length<< endl;
	cout << "Height is " << height<< endl;
	cin.ignore();
	return 0;
}

ಈ ಬ್ಲಾಕ್‌ನ ಹೊರಗಿನ ಬ್ಲಾಕ್‌ನಲ್ಲಿ ಘೋಷಿಸಲಾದ ಅಸ್ಥಿರಗಳನ್ನು ಬಳಸಲು ನಾವು ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದೇವೆ. ಇದು ಈ ಕೆಳಗಿನ ದೋಷಗಳಿಗೆ ಕಾರಣವಾಗುತ್ತದೆ:

ಈ ಲೇಖನದ ತೀರ್ಮಾನದಂತೆ, ಸ್ಥಳೀಯ ಅಸ್ಥಿರಗಳು ಬ್ಲಾಕ್ನ ಒಳಗೆ ಮಾತ್ರ ಕಂಡುಬರುತ್ತವೆ ಎಂದು ನಾವು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಬೇಕು, ಅಲ್ಲಿ ಅದನ್ನು ಘೋಷಿಸಲಾಗುತ್ತದೆ. ಸ್ಥಳೀಯ ವೇರಿಯೇಬಲ್ ಅನ್ನು ಘೋಷಿಸಿದ ಬ್ಲಾಕ್ನ ಹೊರಗೆ ನೀವು ಬಳಸಲಾಗುವುದಿಲ್ಲ.