C++ হলো একটি প্রোগ্রামিং ল্যাঙ্গুয়েজ যা বяр্নে স্ট্রৌস্ট্রুপ द्वारा ১৯৭৯ সালে বেল ল্যাবসে ডেভেলপ করা হয়েছে। C++-কে একটি মিডল-লেভেল ল্যাঙ্গুয়েজ মনে করা হয়, কারণ এটি হাই-লেভেল এবং লো-লেভেল ল্যাঙ্গুয়েজ বৈশিষ্ট্যের সংমিশ্রণ নিয়ে গঠিত। এটি C-এর একটি সুপারসেট, এবং প্রায়শই যেকোনো বৈধ C প্রোগ্রাম একটি বৈধ C++ প্রোগ্রাম। C++ Windows, Mac OS, এবং UNIX-এর çeşitli ভার্সন সহ বিভিন্ন প্ল্যাটফর্মে চলে।
এটি সিস্টেম প্রোগ্রামিং এবং এমবেডেড, রিসোর্স-কনস্ট্রেইনড এবং বড় সিস্টেমের দিকে ঝোঁক সহ ডিজাইন করা হয়েছিল, পারফরম্যান্স, ইফিশিয়েন্সি এবং ব্যবহারে নমনীয়তা ডিজাইন হাইলাইট হিসেবে। এটি সফটওয়্যার ইনফ্রাস্ট্রাকচার এবং রিসোর্স-কনস্ট্রেইনড অ্যাপ্লিকেশন ডেভেলপমেন্টে ব্যবহৃত হয়েছে, যার মধ্যে ডেস্কটপ অ্যাপ্লিকেশন, সার্ভার (যেমন ই-কমার্স, ওয়েব সার্চ বা SQL সার্ভার), এবং পারফরম্যান্স-ক্রিটিক্যাল অ্যাপ্লিকেশন (যেমন টেলিফোন সווিচ বা স্পেস প্রোব) অন্তর্ভুক্ত।
C++ C-এর successeur হিসেবে ডিজাইন করা হয়েছিল এবং কম্পিউটার সায়েন্সে অনেক কনসেপ্ট অন্বেষণ করেছিল। C++ জেনেরিক প্রোগ্রামিং-এর জন্য টেমপ্লেট কনসেপ্ট অন্বেষণ করেছিল। এটিও RAII (রিসোর্স অ্যালোকেশন ইজ ইনিশিয়ালাইজেশন) এবং ডিটারমিনিস্টিক ডেস্ট্রাক্টর অন্বেষণ করেছিল যা বেটার মেমরি ম্যানেজমেন্টে সাহায্য করে।
C++ ইউজার ওভারলোডেবল অপারেটর কনসেপ্ট অন্বেষণ করেছিল যা C++-এ ইউজার-ডিফাইন্ড টাইপগুলোকেও বিল্ট-ইন টাইপের মতো লাগে। এটিও মাল্টিপল ইনহেরিটেন্স সাপোর্ট করে যা জটিল রিয়েল লাইফ কনস্ট্রাক্ট মডেলিং-এ সাহায্য করে।
শেষ পর্যন্ত, C++ একটি খুব স্ট্রাকচার্ড ল্যাঙ্গুয়েজ মেশিনের কাছাকাছি এবং সেটি الخام পারফরম্যান্স দরকার এমন বিভিন্ন টাস্কে ব্যবহৃত হয়। এটি বিভিন্ন অ্যাপ্লিকেশন ইমপ্লিমেন্ট করতে ব্যবহৃত হয়েছে যা অন্য ল্যাঙ্গুয়েজ দিয়ে বিল্ড করলে খুব স্লো বা আনমেইনটেইনেবল হতো।
উদাহরণস্বরূপ, অধিকাংশ ফাইন্যান্সিয়াল ইনস্টিটিউশন C++ ব্যবহার করে ফাইন্যান্সিয়াল ডেটা মডেল করতে কারণ এটি খুব দ্রুত। এটি C-র চেয়ে এক লেভেল উপরে কিন্তু C-এর মতো একই ফাংশন্যালিটি প্রদান করে এবং তাই এমবেডেড এনভায়রনমেন্টেও ব্যবহার করা যায়। এটি প্রায়শই গেম ইঞ্জিন, গেম, এবং ডেস্কটপ অ্যাপ ডেভেলপ করতে ব্যবহৃত হয়। অনেক AAA টাইটেল ভিডিও গেম C++-এ বিল্ড করা হয়।