নোট করুন এই প্রশ্নটি মূলত ২০০৯ সালে পোস্ট করা হয়েছিল, সি ++ 11 অনুমোদনের আগে এবং মূলশব্দটির অর্থ
auto
হঠাৎ পরিবর্তিত হওয়ার আগে । প্রদত্ত উত্তরগুলি কেবলমাত্র সি ++ 03 এর সাথে সম্পর্কিতauto
- এটি স্টোরেজ শ্রেণি নির্দিষ্ট করা - এবং সি ++ 11 এর অর্থ নয়auto
- এটি স্বয়ংক্রিয় টাইপ ছাড় being আপনি কখন সি ++ 11 ব্যবহার করবেন সে সম্পর্কে পরামর্শ খুঁজছেনauto
, এই প্রশ্নটি এই প্রশ্নের সাথে প্রাসঙ্গিক নয়।
দীর্ঘ সময় ধরে আমি ভেবেছিলাম static
সিতে কীওয়ার্ডটি ব্যবহার করার কোনও কারণ নেই কারণ ব্লক-স্কোপের বাইরে ঘোষিত ভেরিয়েবলগুলি স্পষ্টতই বিশ্বব্যাপী ছিল। তারপরে আমি আবিষ্কার করেছি যে static
ব্লক-স্কোপের মধ্যে ভেরিয়েবল ঘোষণার ফলে এটি স্থায়ী সময়কাল হয়ে যায় এবং এটি ব্লক-স্কোপের বাইরে ঘোষণা করে (প্রোগ্রাম-স্কোপে) এটি ফাইল-সুযোগ দেয় (কেবল comp সংকলন ইউনিটে অ্যাক্সেস করা যায়)।
সুতরাং এটি আমাকে কেবল একটি কীওয়ার্ড দিয়ে ফেলেছে যা আমি (সম্ভবত) এখনও পুরোপুরি বুঝতে পারি না: মূল auto
শব্দটি। 'লোকাল ভেরিয়েবল' ব্যতীত এর অন্য কোনও অর্থ আছে কি? এটি যে কোনও কিছু করে যা এটি আপনার জন্য স্পষ্টভাবে সম্পন্ন হয় না আপনি যেখানেই এটি ব্যবহার করতে চান? auto
প্রোগ্রামের সুযোগে একটি পরিবর্তনশীল কীভাবে আচরণ করে? static auto
ফাইল-স্কোপের একটি পরিবর্তনশীল সম্পর্কে কী ? এই কীওয়ার্ডটির কেবলমাত্র সম্পূর্ণতার জন্য বিদ্যমান ছাড়া অন্য কোনও উদ্দেশ্য রয়েছে ?