কম্পিউটার

কিভাবে "অকার্যকর *" C এবং C++ এর মধ্যে পার্থক্য করে?


এই বিভাগে আমরা দেখব সি-তে ভয়েড পয়েন্টার এবং সি++-এ ভয়েড পয়েন্টারের মধ্যে পার্থক্য কী। তারা উভয়ই অকার্যকর পয়েন্টার কিন্তু C তে একটি অকার্যকর পয়েন্টার যেকোন পয়েন্টার টাইপের জন্য বরাদ্দ করা যেতে পারে, কিন্তু C++ এ আমরা তা করতে পারি না। C++ এ আমাদের অ্যাসাইন করার জন্য স্পষ্টভাবে টাইপকাস্ট করতে হবে।

নিম্নলিখিত উদাহরণে এই লাইনগুলি চালানো যেতে পারে যখন আমরা C.

এ কিছু কোড লিখি
void *p;
int *int_ptr = p;

এটি সি-তে সূক্ষ্ম কাজ করবে। এখন যদি আমরা কিছু মেমরি স্পেস বরাদ্দ করতে malloc() ব্যবহার করি, আমরা স্পষ্ট টাইপকাস্ট ব্যবহার করতে পারি, কিন্তু যদি আমরা তা না করি তবে এটিও জরিমানা করবে। malloc() ফাংশন void পয়েন্টার প্রদান করে।

int *int_ptr = malloc(sizeof(int) * 10);

এখানে প্রত্যাবর্তিত void পয়েন্টারটি স্পষ্টভাবে পূর্ণসংখ্যা টাইপ পয়েন্টারে রূপান্তরিত হয়।

এখন যদি আমরা একই প্রোগ্রাম C এবং C++ এ চালাতে চাই, তাহলে আমাদের স্পষ্টভাবে পয়েন্টার টাইপ করতে হবে।

void *p;
int *int_ptr = (int *) p;
int *arr_ptr = (int *) malloc(sizeof(int) * 10);

  1. WPS কি এবং এটি কিভাবে কাজ করে?

  2. ড্রপবক্স পেপার কী এবং এটি কীভাবে তুলনা করে?

  3. কিভাবে C++ এ কম্বিনেশন এবং পারমুটেশন গণনা করা যায়?

  4. ভয়েড লিনাক্স কি এবং কিভাবে এটি ইনস্টল করতে হয়