C++ Constants

Introduction to C++ Constants

C++ में constants और variables एक समान ही होते है। Constants को भी variables की तरह ही define किया जाता है, इनके data type भी variables के जैसे ही होते है और memory allocation भी variables की तरह ही होता है।

एक constant और variable में फर्क सिर्फ इतना होता है की variable की value run time में किसी भी operation द्वारा change की जा सकती है लेकिन constant की value run time में किसी भी तरह change नहीं की जा सकती है।

उदाहरण के लिए आपने एक variable Num create किया है जिसको आपने 0 value assign की है। Program के run होने पर आप इसमें 2+2 add करके Num variable में store करवाते है।

int Num = 0;
Num = 2+2;  //Num now have 4

इसके बाद Num varaible की value 4 हो जाती है जिसे आप print करवाते है। ऐसा आसानी से हो जाता है क्योंकि Num एक variable है और इसकी value आसानी से change हो सकती है।

लेकिन यदि ऊपर दिए गए उदाहरण में Num एक constant होता है और उसकी value को 2+2 expression द्वारा change करने का प्रयास किया जाता तो ऐसा होने पर program में error generate होती है।

Constant को value उन्हें create करते समय ही assign की जाती है। एक बार program run होने के बाद constant की value को change नहीं किया जा सकता है।

C++ में 2 प्रकार के constants होते है। इनके बारे में निचे बताया जा रहा है।

Literal Constants

एक literal constant direct value होती है। जैसे की 5, 5.4, hello world आदि। Program में जब भी इनकी आवश्यकता होती है तो इन्हे directly use किया जाता है। उदाहरण के लिए कोई variable Num है की जिसकी value 10 है। आप Num variable की value को 2 से divide करके result variable में result store करना चाहते है।

int Num, Result;
Num = 10;
Result = Num/2;          //2 is literal, used directly in program  

ऐसे में आप Num/2 इस प्रकार लिखेंगे। यँहा पर 2 एक literal constant (direct value) है। इसे directly program में define किया गया है।

Literal constants की के साथ सबसे बड़ी problem यह होती है की यदि आपने इन्हे program में कई बार use किया है और बाद में आपको इन्हे change करने की आवश्यकता होती है तो आपको उन्हें सभी जगह पर ढूंढ के manually change करना होगा। इस problem का solution Symbolic constants होते है।

Symbolic Constants

Literal constant की तरह symbolic constant कोई value नहीं होती है। Symbolic constant एक नाम होता है जो एक memory location को represent करता है जँहा पर value stored रहती है। उस नाम के द्वारा आप value को access कर पाते है जैसा की आप variables के साथ करते है। लेकिन जैसा की आपको पता है आप उस value को change नहीं कर सकते है।

Symbolic constant को आप program में कितनी भी बार use कर सकते है। जब आप इसकी value change करते है तो वह value program में automatically change हो जाती है। इसलिए literal constants की अपेक्षा symbolic constants अधिक उपयोगी होते है।

Defining C++ Constants

C++ में literal constants को आप आसानी से use कर पाते है लेकिन symbolic constants को आप पहले define करते है और उसके बाद use कर करते है। C++ में symbolic constants को आप दो प्रकार से define कर सकते है। इनके बारे में निचे बताया जा रहा है।

Using #define Preprocessor

C++ में constants को #define preprocessor के द्वारा define करने का general syntax निचे दिया जा रहा है।

#define constant-name value

जब आप #define preprocessor द्वारा constant define करते है तो ऐसा आप program की शुरआत में header files को include करने के बाद करते है। जब आप #define preprocessor के द्वारा constant define करते है तो किसी प्रकार का data type नहीं define करते है।

सबसे पहले आप #define preprocessor को define करते है। इसके बाद आप constant का नाम देते है और उसके बाद space दे कर उसकी value देते है।

Using const Keyword

C++ में constant define करने के लिए const keyword को use करने का general syntax निचे दिया जा रहा है।

const-keyword data-type constant-name = value;

आप const keyword के प्रयोग से किसी particular type (int, float, char आदि) का constant create कर सकते है।

सबसे पहले आप const keyword define करते है। इसके बाद आप वह data type define करते है जिसका constant आप create करना चाहते है। इसके बाद आप constant का नाम लिखते है और उसके बाद assignment operator (=) लगाकर वह value लिखते है जिसे आप उस constant name के द्वारा access करना चाहते है।

Example of C++ Constants

C++ में constants के use को निचे उदाहरण द्वारा समझाया जा रहा है।

#include<iostream>
using namespace std;

int main()
{
    const int Tax = 5;
    int Bill, Total;

    cout<<"Please enter item amount";
    cin>>Bill;

    Total =Bill+((Bill*Tax)/100);
    cout<<"Total billing amount with tax is : "<<Total;

}

ऊपर दिया गया उदाहरण निचे दिया गया output generate करता है।

Please enter item amount : 300
Total billing amount with tax is : 315