সি ++ একটি হাইব্রিড নয় কারণ এটি একজনকে সি-স্টাইল কোড লেখার অনুমতি দেয় তবে এটি প্রসেসরিজাল, অবজেক্ট-ওরিয়েন্টেড এবং জেনেরিকের মতো বেশ কয়েকটি প্রোগ্রামিং প্যারাডিমগুলিকে সমর্থন করে। সি ++ আপনাকে কোনও কাজ করার একটি উপায়ের জন্য জোর করে না, এবং এটি তার শক্তি, কারণ বিভিন্ন দৃষ্টান্ত ব্যবহার করে বিভিন্ন সমস্যা আরও সহজেই সমাধান করা যেতে পারে।
আইএমএইচও, ভাষা / সংকলক কিছুটা প্রোগ্রামারদের আরও মার্জিত কোড লিখতে বাধ্য করলে এটি আরও ভাল।
তারপরে আপনাকে প্রথমে মার্জিত অর্থ কী তা নির্ধারণ করতে হবে । তারপরে আপনাকে দেখতে হবে যে মার্শাল আপনার সংজ্ঞাটি সেই সমস্ত সমস্যা ডোমেন এবং প্ল্যাটফর্মগুলির জন্য উপযুক্ত, যার জন্য সি ++ ব্যবহার করা হয়েছে। একটি কোডিং স্টাইল যা উইন্ডোজের জন্য ওয়ার্ড প্রসেসর লেখার জন্য মার্জিত, কোনও এমবেডেড সিস্টেম লেখার জন্য সম্পূর্ণরূপে অসমর্থিত হতে পারে।
কোনও ডিএসপি চালানোর জন্য সি ++ কোড লেখার বিষয়টি বিবেচনা করুন। প্রথমত, সেই ডিএসপির জন্য সি ++ সংকলক স্ট্রিমের মতো নির্দিষ্ট সি ++ বৈশিষ্ট্যগুলি কেবল সমর্থন করে না। দ্বিতীয়ত, আপনি সিপিইউ গতি, এবং সম্ভবত মেমরির দ্বারা গুরুতরভাবে বাধাগ্রস্থ হন, তাই কিছু সি ++ বৈশিষ্ট্যগুলি কেবল আপনার কর্মক্ষমতা হারাতে পারে। উদাহরণস্বরূপ, গতির স্বার্থে আপনাকে ভার্চুয়াল ফাংশন এড়াতে হতে পারে। এই জাতীয় বিবেচনাগুলি আপনার পিসিতে কী ব্যবহার করবে তার তুলনায় আপনার প্রোগ্রামিং স্টাইলকে আমূল পরিবর্তন করবে এবং সি ++ এটি অনুমতি দেয়।
সংক্ষেপে বলতে গেলে, সি ++ হ'ল প্রচুর বৈশিষ্ট্যযুক্ত একটি বিশাল এবং জটিল ভাষা। এই বৈশিষ্ট্যগুলির কোনও সাবসেট কোনও নির্দিষ্ট প্রকল্পের জন্য প্রযোজ্য না হতে পারে এর অনেকগুলি কারণ রয়েছে: গতি, বহনযোগ্যতা, সংকলক সমর্থন, এমনকি প্রোগ্রামার অভিজ্ঞতা এবং পরিচিতি। যে কারণে ভাষার বিকাশকারীকে কোনও নির্দিষ্ট কাজের জন্য অন্যের বিপরীতে কিছু নির্দিষ্ট বৈশিষ্ট্য ব্যবহার করতে বাধ্য করা খারাপ ধারণা। জাভা সম্পর্কে চিন্তা করুন, যেখানে ভাষা আদেশ দেয় যে প্রতিটি ফাংশন অবশ্যই একটি শ্রেণির একটি পদ্ধতি হতে পারে। অনেকগুলি ক্ষেত্রে রয়েছে যখন কেবল কোনও পদ্ধতি মোড়ানোর জন্য শ্রেণি তৈরি করা জটিল এবং অপ্রয়োজনীয় এবং তবুও আপনাকে এটি করতে হবে কারণ ভাষা আপনাকে বাধ্য করে।