একসময়, অনেক চাঁদ আগে, ভিএস 6 বিদ্যমান ছিল এবং জনপ্রিয় ছিল। এটি বেশ কয়েকটি সি ++ স্ট্যান্ডার্ডের সাথে সামঞ্জস্য করতে ব্যর্থ হয়েছে; এটি যুক্তিযুক্ত ছিল যেহেতু এটি প্রকাশিত হওয়ার ঠিক আগে (একই বছর) মানটি সরকারীভাবে প্রকাশিত হয়েছিল; এটি যতক্ষণ না আমি সচেতন ততই স্ট্যান্ডার্ডের খসড়াটি মেনে চলেন।
খসড়া এবং অফিসিয়াল স্ট্যান্ডার্ডের মধ্যে যে স্ট্যান্ডার্ডগুলি পরিবর্তিত হয়েছিল, তার মধ্যে একটি হ'ল প্রথম বিভাগে তৈরি লুপ ভেরিয়েবলের জীবনকাল; নিম্নলিখিত কোডটি সংকলন করতে ব্যর্থ হয়েছে leading
{
for (int i=0; i<1; ++i){}
for (int i=0; i<2; ++i){}
}
কারণ i
লুপের জন্য দ্বিতীয়টির দ্বারা নতুন সংজ্ঞা দেওয়া হয়েছিল।
অন্য সংকলকরাও এই বাগটি ভোগ করেছে; আমি ভিএস 6 টি হাইলাইট করেছি কারণ স্ট্যান্ডার্ড প্রকাশের পরে বেশ কয়েক বছর ধরে এটি ভিজ্যুয়াল স্টুডিওর একমাত্র সংস্করণ হিসাবে থেকে যায়, তবে এই নির্দিষ্ট ইস্যুটির জন্য কোনও আপডেট কখনও প্রকাশ করেনি; এর অর্থ এটির আরও উল্লেখযোগ্য প্রভাব ছিল।
এর একটি সমাধান হ'ল সম্পূর্ণরূপে লুপের জন্য নিজের স্কোপে জোর করে দেওয়া যেমন আপনি দেখিয়েছেন।