কম্পিউটার

কেন বিশ্বব্যাপী ভেরিয়েবলগুলি C/C++ এ খারাপ?


গ্লোবাল ভেরিয়েবল ঘোষণা করা হয় এবং প্রোগ্রামের যেকোনো ফাংশনের বাইরে সংজ্ঞায়িত করা হয়। তারা প্রোগ্রামের সারা জীবন ধরে তাদের মান ধরে রাখে। এগুলি প্রোগ্রামের সম্পাদন জুড়ে অ্যাক্সেসযোগ্য।

নন-কনস্ট গ্লোবাল ভেরিয়েবল খারাপ কারণ তাদের মান যেকোনো ফাংশন দ্বারা পরিবর্তন করা যেতে পারে। গ্লোবাল ভেরিয়েবল ব্যবহার করলে প্রোগ্রামটির মডুলারিটি এবং নমনীয়তা কমে যায়। প্রোগ্রামে গ্লোবাল ভেরিয়েবল ব্যবহার না করার পরামর্শ দেওয়া হচ্ছে। গ্লোবাল ভেরিয়েবল ব্যবহার করার পরিবর্তে প্রোগ্রামে স্থানীয় ভেরিয়েবল ব্যবহার করুন।

নামকরণের সংঘর্ষ এড়াতে এবং ভেরিয়েবল যে বিশ্বব্যাপী তা জানার জন্য পরিবর্তনশীল নামের উপসর্গ হিসেবে 'g_' ব্যবহার করুন। এছাড়াও আরেকটি উপায় আছে যা ভেরিয়েবলকে স্ট্যাটিক করে গ্লোবাল ভেরিয়েবলকে এনক্যাপসুলেট করে।

এখানে C ভাষায় গ্লোবাল ভেরিয়েবলের একটি উদাহরণ দেওয়া হল,

উদাহরণ

#include <stdio.h>
int g_var;
static g_var1;

int main () {
   int a = 15;
   int b = 20;

   g_var = a+b;
   g_var1 = a-b;
   
   printf ("a = %d\nb = %d\ng_var = %d\n", a, b, g_var);
   printf("g_var1 = %d", g_var1);

   return 0;
}

আউটপুট

এখানে আউটপুট

a = 15
b = 20
g_var = 35
g_var1 = -5

  1. কিভাবে C++ স্থানীয় এবং গ্লোবাল ভেরিয়েবল ডিফল্টরূপে আরম্ভ করা হয়?

  2. C++ এ ভেরিয়েবলের স্টোরেজ ক্লাস কি কি?

  3. কেন আমাদের C# এ গ্লোবাল ভেরিয়েবল নেই?

  4. কেন ম্যাক গেমিং এ এত খারাপ?