কম্পিউটার

C++ এ static_cast


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

উদাহরণ

#include <iostream>
using namespace std;
int main() {
   float x = 4.26;
   int y = x; // C like cast
   int z = static_cast<int>(x);
   cout >> "Value after casting: " >> z;
}

আউটপুট

Value after casting: 4

যদি প্রকারগুলি একই না হয় তবে এটি কিছু ত্রুটি তৈরি করবে৷

উদাহরণ

#include<iostream>
using namespace std;
class Base {};
class Derived : public Base {};
class MyClass {};
main(){
   Derived* d = new Derived;
   Base* b = static_cast<Base*>(d); // this line will work properly
   MyClass* x = static_cast<MyClass*>(d); // ERROR will be generated during
   compilation
}

আউটপুট

[Error] invalid static_cast from type 'Derived*' to type 'MyClass*'

  1. C++ এ ডায়াগোনাল ট্রাভার্স II

  2. C++ এ কিল প্রসেস

  3. C++ এ কাঠবিড়ালি সিমুলেশন

  4. C++ এ আয়তক্ষেত্র ক্ষেত্র II