কম্পিউটার

static_cast, dynamic_cast, const_cast এবং reinterpret_cast কখন C++ এ ব্যবহার করা উচিত?


const_cast

একটি ভেরিয়েবলে কন্সট সরাতে বা যোগ করতে ব্যবহার করা যেতে পারে। এটি কার্যকর হতে পারে যদি একটি ভেরিয়েবল থেকে স্থিরতা যোগ/সরানোর প্রয়োজন হয়।

static_cast

এটি সাধারণ/সাধারণ টাইপ রূপান্তরের জন্য ব্যবহৃত হয়৷ এটি অন্তর্নিহিত টাইপ কোরশনের জন্য দায়ী কাস্ট এবং এটিকে স্পষ্টভাবে বলা যেতে পারে। ফ্লোটকে int, char থেকে int ইত্যাদিতে রূপান্তর করার মতো ক্ষেত্রে আপনার এটি ব্যবহার করা উচিত।

ডাইনামিক_কাস্ট

এই কাস্ট পলিমরফিজম পরিচালনার জন্য ব্যবহৃত হয়। আপনি যখন একটি প্রাপ্ত ক্লাসে কাস্ট করছেন তখনই আপনাকে এটি ব্যবহার করতে হবে। আপনি যখন বেস ক্লাস থেকে ডেরাইভড ক্লাসে কাস্ট করেন তখন এটি শুধুমাত্র উত্তরাধিকারে ব্যবহার করা হয়।

reinterpret_cast

এটি ব্যবহার করা সবচেয়ে কঠিন৷ এটি বিট নিদর্শন পুনর্ব্যাখ্যা করার জন্য ব্যবহৃত হয় এবং অত্যন্ত নিম্ন স্তরের। এটি প্রাথমিকভাবে একটি কাঁচা ডেটা বিট স্ট্রীমকে প্রকৃত ডেটাতে পরিণত করা বা একটি সারিবদ্ধ পয়েন্টারের নিম্ন বিটগুলিতে ডেটা সংরক্ষণ করার মতো জিনিসগুলির জন্য ব্যবহৃত হয়৷


  1. C++ এ নিয়মিত কাস্ট বনাম স্ট্যাটিক_কাস্ট বনাম ডাইনামিক_কাস্ট

  2. একটি স্মার্ট পয়েন্টার কি এবং কখন আমি এটি C++ এ ব্যবহার করব?

  3. C এবং C++ এ main() কী রিটার্ন করা উচিত?

  4. আপনার কখন C++ এ 'বন্ধু' ব্যবহার করা উচিত?