C++11 হল আদর্শ C++ ভাষার একটি সংস্করণ। এটি 12 আগস্ট 2011 তারিখে ইন্টারন্যাশনাল অর্গানাইজেশন ফর স্ট্যান্ডার্ডাইজেশন (ISO) দ্বারা অনুমোদিত হয়েছিল তারপর C++14 এবং C++17। C++11 মূল ভাষাতে বেশ কিছু সংযোজন করে।
C++11 -
-এ কিছু নতুন পরিবর্তন আনা হয়েছে-
nullptr − পূর্ববর্তী nullptr-এ, শূন্য মান হিসাবে ব্যবহৃত হত এবং এতে অখণ্ড মানের অন্তর্নিহিত রূপান্তরের একটি ত্রুটি ছিল। নাল পয়েন্টার আক্ষরিক দ্বারা প্রতিনিধিত্ব করা হয়std::nullptr_t. এই nullptr এ, কোন অন্তর্নিহিত রূপান্তর বিদ্যমান নেই।
-
ল্যাম্বডাস - ল্যাম্বডা এক্সপ্রেশন স্থানীয়ভাবে ফাংশন সংজ্ঞায়িত করতে দেয়। বেনামী ফাংশন ল্যাম্বডা নামে পরিচিত। আমরা ল্যাম্বডা এক্সপ্রেশন ব্যবহার করতে পারি যেখানেই ফাংশন অবজেক্ট std::function প্রত্যাশিত।
-
স্মার্ট পয়েন্টার − স্মার্ট পয়েন্টার auto_ptr একমাত্র স্মার্ট পয়েন্টার ছিল এবং এখন এটি অবহেলিত। C++11-এ আরও তিনটি স্মার্ট পয়েন্টার যোগ করা হয়েছে যেমন শেয়ার্ড_পিটিআর, ইউনিক_পিটিআর এবং দুর্বল_পিটিআর।
-
অটো − পূর্ববর্তী সংস্করণগুলিতে, আমাদের অবশ্যই অবজেক্টের ধরণ নির্দিষ্ট করতে হবে কিন্তু C++11-এ টাইপ নির্দিষ্ট করার কোনো প্রয়োজন নেই যার মানে আপনি ভেরিয়েবলের ধরন উল্লেখ না করে সরাসরি ঘোষণা করতে পারেন।
-
ওভাররাইড এবং ফাইনাল − সংস্করণ C++11 দুটি নতুন বিশেষ শনাক্তকারী চালু করেছে যেমন ওভাররাইড এবং চূড়ান্ত। ওভাররাইড নির্দেশ করে যে পদ্ধতিটি বেস ক্লাসে ভার্চুয়াল পদ্ধতির ওভাররাইড হওয়ার কথা। অন্যদিকে, চূড়ান্ত নির্দেশ করে যে প্রাপ্ত ক্লাস ভার্চুয়াল পদ্ধতিকে ওভাররাইড করা উচিত নয়।
-
মোছা এবং ডিফল্ট ফাংশন - মুছে ফেলা ফাংশন বস্তুর অনুলিপি প্রতিরোধের জন্য দরকারী। অনুলিপি নিষ্ক্রিয় করতে, “=delete; " ব্যবহৃত হয়. ডিফল্ট ফাংশন কম্পাইলারকে ফাংশনের ডিফল্ট ইমপ্লিমেন্টেশন জেনারেট করার নির্দেশনা দেয় এবং “=default;“ ডিফল্ট ফাংশনের জন্য ব্যবহার করা হয়।
-
লুপের জন্য পরিসীমা-ভিত্তিক − C++11 সংগ্রহের উপর পুনরাবৃত্তি করার জন্য লুপের জন্য পরিসীমা-ভিত্তিক প্রবর্তন করেছে। এখন, এটি সি-অ্যারেগুলির মতো পুনরাবৃত্তি করা সম্ভব। এটি পুনরাবৃত্ত ওভারের 'ফরচ' দৃষ্টান্তকে সমর্থন করে।
-
জোরালোভাবে টাইপ করা enums − ঐতিহ্যবাহী গণনায়, তারা আশেপাশের সুযোগে তাদের গণনাকারী রপ্তানি করত। এগুলিকে "এনাম ক্লাস" কীওয়ার্ড হিসাবে নির্দিষ্ট করা হয়েছে। তারা আশেপাশের সুযোগে তাদের গণনাকারী রপ্তানি করে না।
-
স্ট্যাটিক_অ্যাসার্ট এবং টাইপ বৈশিষ্ট্য - এটি সংকলনের সময় একটি দাবী পরীক্ষা করে। দাবীটি সত্য হলে, এটি কিছুই প্রদর্শন করে না অন্যথায় এটি একটি ত্রুটি বার্তা প্রদর্শন করে৷
৷ -
নতুন C++ অ্যালগরিদম − C++11 স্ট্যান্ডার্ড লাইব্রেরি কিছু অপারেশন সহ নতুন অ্যালগরিদম চালু করেছে যেমন all_of(), any_of এবং none_of()।