ٹائپ کاسٹنگ اور ٹائپ تبادلوں کے مابین فرق

مصنف: Laura McKinney
تخلیق کی تاریخ: 1 اپریل 2021
تازہ کاری کی تاریخ: 4 مئی 2024
Anonim
قسم کاسٹنگ بمقابلہ قسم کی تبدیلی|قسم کاسٹنگ اور قسم کی تبدیلی کے درمیان فرق
ویڈیو: قسم کاسٹنگ بمقابلہ قسم کی تبدیلی|قسم کاسٹنگ اور قسم کی تبدیلی کے درمیان فرق

مواد


ٹائپ کنورژن اور ٹائپ کاسٹنگ کے مابین بنیادی فرق ، یعنی ٹائپ تبادلوں کو مرتب کرنے والے کے ذریعہ "خود بخود" بنایا جاتا ہے جبکہ ، پروگرامر کے ذریعہ ٹائپ کاسٹنگ کو "واضح طور پر" کرنا ہوتا ہے۔

دو قسمیں "ٹائپ کاسٹنگ" اور "ٹائپ تبادلوں" اس وقت پائے جاتے ہیں جب کسی ڈیٹا ٹائپ کو دوسرے میں تبدیل کرنے کی ضرورت ہو۔ جب دونوں اقسام ایک دوسرے کے ساتھ مطابقت پذیر ہیں ، تو پھر ایک قسم سے دوسری میں تبادلہ مرتب کرنے والا خود بخود ہوجاتا ہے۔ آئیے موازنہ چارٹ کی مدد سے دونوں طرح کی کاسٹنگ اور تبادلوں کے فرق پر تبادلہ خیال کریں۔

  1. موازنہ چارٹ
  2. تعریف
  3. کلیدی اختلافات
  4. نتیجہ اخذ کرنا

موازنہ چارٹ:

موازنہ کی بنیادٹائپ کاسٹنگتبادلوں کی قسم
مطلبایک کاسٹ آپریٹر استعمال کرکے ایک دوسرے کو ڈیٹا کی قسم تفویض کی جاتی ہے پھر اسے "ٹائپ کاسٹنگ" کہا جاتا ہے۔مرتب کے ذریعہ ایک ڈیٹا کی قسم کو خود بخود دوسرے میں تبدیل کرنا "ٹائپ تبادلوں" کہلاتا ہے۔
درخواست دی گئیدو قسم کے متضاد اعداد و شمار پر بھی قسم کی کاسٹنگ کا اطلاق کیا جاسکتا ہے۔قسمت کے تبادلوں کا اطلاق تب ہی ہوسکتا ہے جب دو قسموں کے ڈیٹا مطابقت پذیر ہوں۔
آپریٹرکسی دوسرے کوائف ٹائپ کرنے کے ل a ، کاسٹنگ آپریٹر () ضروری ہے۔کسی آپریٹر کی ضرورت نہیں۔
ڈیٹا کی اقسام کا سائزمنزل کی قسم ماخذ کی قسم سے چھوٹی ہوسکتی ہے۔یہاں منزل کی قسم ماخذ کی قسم سے بڑی ہونی چاہئے۔
لاگو کیایہ پروگرام ڈیزائننگ کے دوران کیا جاتا ہے۔یہ مرتب کرتے وقت واضح طور پر کیا جاتا ہے۔
تبادلوں کی قسم

تنگ تبدیلی۔وسیع تر تبادلوں۔
مثالint a؛
بائٹ بی؛
...
...
b = (بائٹ) a؛
int a = 3؛
فلوٹ بی؛
b = a؛ // بی میں قیمت = 3.000۔


ٹائپ کاسٹنگ کی تعریف

قسم کاسٹنگ پروگرام ڈیزائنر کے وقت ، پروگرامر کے ذریعہ ، کسی ڈیٹا ٹائپ کو دوسرے ڈیٹا ٹائپ میں ڈالنے کی تعریف کی جاسکتی ہے۔ ایک ڈیٹا کی قسم کا خودکار طور پر دوسرے میں تبدیل کرنا ہر وقت ممکن نہیں ہے۔ یہ حالت ہوسکتی ہے کہ ’منزل کی قسم‘ ‘ماخذ کی قسم’ سے چھوٹی ہے۔ لہذا ، پروگرامر کو کاسٹنگ آپریٹر (()) کا استعمال کرتے ہوئے واضح طور پر چھوٹے سے ڈیٹا ٹائپ پر بڑی ڈیٹا ٹائپ کرنا پڑتی ہے۔ چونکہ بڑی ڈیٹا ٹائپ کو چھوٹے ڈیٹا ٹائپ میں تبدیل کیا جاتا ہے ، لہذا اس کو ’’ تنگ تبدیلی ‘‘ بھی کہا جاتا ہے۔

اعلامیہ:

منزل_ٹیائپ = (ٹارگٹ_ٹائپ) متغیر / ویلیو // ٹارگٹ ٹائپ ایک قسم ہے جس میں آپ ماخذ کی قسم کو تبدیل کرنا چاہتے ہیں ، یہ ہمیشہ منزل کی قسم ہے۔

مثال

آئیے اسے ایک مثال کے ساتھ سمجھیں۔ آپ ڈیٹا کی قسم کو 'انٹ' سے 'بائٹ' میں تبدیل کرنا چاہتے ہیں۔ اب ، چونکہ ‘بائٹ’ ’انٹ‘ سے چھوٹا ہے ، لہذا ٹائپ تبادلوں کی اجازت نہیں ہے۔ یہاں ، ہمیں کاسٹنگ آپریٹر (()) کا استعمال کرکے واضح طور پر ’انٹ‘ کو ‘بائٹ’ میں تبدیل کرنا پڑا۔ چونکہ ‘انٹ’ ’بائٹ‘ سے بڑا ہے لہذا ، ’انٹ‘ کا سائز کم ہو کر “انٹ موڈ بائٹ” رینج ہو جائے گا۔


int a؛ بائٹ بی؛ ... ... b = (بائٹ) a؛

جب "فلوٹ" کو 'انٹ' میں تبدیل کیا جاتا ہے تو ، فلوٹ کا سائز چھوٹا ہوجاتا ہے ، کیوں کہ 'انٹ' جزء کی قدر کو محفوظ نہیں کرتا ہے۔ اگر منبع کی قسم کے لئے منزل مقصود کی مقدار کا سائز بہت کم ہے تو ، ماخذ کی قسم موڈولو منزل کی قسم ‘حد‘ ہے۔ جب اعداد و شمار کی قسم مطابقت پذیر ہوں تو کاسٹنگ کا اطلاق بھی کیا جاسکتا ہے۔ جہاں کہیں بھی ٹائپ تبادلوں کی ضرورت ہو وہاں ٹائپ کاسٹنگ استعمال کرنا اچھا عمل ہے۔

قسم کے تبادلوں کی تعریف

تبادلوں کی قسم جب بھی ضرورت ہو ایک اعداد و شمار کی قسم کا خودکار تبادلہ ہوتا ہے ، جب تکمیل کنندہ کے ذریعہ واضح طور پر کیا جاتا ہے۔ لیکن یہاں تبادلوں سے پہلے مطمئن ہونے کے لئے دو شرطیں ہیں۔

  • ماخذ اور منزل کی قسم مطابقت پذیر ہونی چاہئے۔
  • منزل کی قسم ماخذ کی قسم سے بڑی ہونی چاہئے۔

ان دونوں شرائط کو ٹائپ تبادلوں کے حصول کے لfy مطمئن ہونا چاہئے ، اور اس قسم کے تبادلوں کو ’’ وسیع تر تبادلوں ‘‘ کہا جاتا ہے ، چونکہ ایک چھوٹی قسم کو بڑی قسم میں تبدیل کیا جاتا ہے ، اس طرح کی وسیع ہوتی ہے۔ اس بڑھتے ہوئے تبادلوں کے ل ‘، عددی اقسام جیسے" انٹ "،" فلوٹ "ایک دوسرے کے ساتھ مطابقت رکھتے ہیں جبکہ عددی چار سے چار اور بولین یا چار ٹو بولین بھی مطابقت نہیں رکھتے ہیں۔

مثال

یہ مثال اس کا بہتر نظارہ پیش کرے گی

int a = 3؛ فلوٹ بی؛ b = a؛ // بی میں قیمت = 3.000۔

یہاں ، 'انٹ' کو 'فلوٹ' میں تبدیل کیا جاتا ہے جو 'انٹ' سے بڑا ہوتا ہے ، لہذا منبع کی قسم کی وسیع ہوتی ہے۔ یہاں ، کسی بھی معدنیات سے متعلق آپریٹر کی ضرورت نہیں ہے کیونکہ مرتب یہ واضح طور پر کرے گا۔

  1. بنیادی فرق جو ٹائپ کاسٹنگ کو ٹائپ کنورژن سے ممتاز کرتا ہے وہ یہ ہے کہ ٹائپ کاسٹنگ ایک قسم سے دوسری میں تبدیل ہوتا ہے ، جو پروگرامر کے ذریعہ ہوتا ہے۔ دوسری طرف ، قسم کی تبدیلی ایک طرح سے دوسری میں تبدیل ہوتی ہے ، جو مرتب کرتے وقت مرتب کے ذریعہ کی جاتی ہے۔
  2. قسم کاسٹنگ ڈیٹا ٹائپس پر لاگو کیا جاسکتا ہے ، جو ایک دوسرے کے ساتھ مطابقت نہیں رکھتے ہیں۔ اس کے برعکس ، قسم کے تبادلوں کا اطلاق صرف ڈیٹا ٹائپس پر ہوسکتا ہے جو ایک دوسرے کے ساتھ مطابقت رکھتا ہو۔
  3. ایک قسم میں دوسری طرح کی معدنیات سے متعلق تبدیلی کے لئے معدنیات سے متعلق آپریٹر "()" کی ضرورت ہوتی ہے جبکہ ایک ڈیٹا کی قسم کو دوسرے میں تبدیل کرنے میں کسی بھی آپریٹر کی ضرورت نہیں ہوتی ہے۔
  4. ایک طرح کے کاسٹنگ میں ڈیٹا کی قسم کو دوسرے میں تبدیل کرتے ہوئے ، منزل مقصود کی قسم منبع کی قسم سے بڑی یا چھوٹی ہوسکتی ہے۔ اس کے برعکس ، منزل کی قسم لازمی ہے کہ وہ تبادلوں میں منبع کی قسم سے زیادہ ہو۔
  5. ٹائپ کاسٹنگ میں کوڈ کرتے ہوئے ایک قسم کو دوسری قسم میں تبدیل کیا جاتا ہے۔ اس کے برعکس ، قسم کے تبادلوں میں ، تالیف کے دوران واضح طور پر ایک قسم میں تبدیل کیا جاتا ہے۔
  6. ٹائپ کاسٹنگ کو تنگ کنورژن کہا جاتا ہے کیونکہ یہاں منزل کی قسم ماخذ کی قسم سے چھوٹی ہوسکتی ہے۔ اس کے برعکس ، ٹائپ تبادلوں کو وسیع کرتے ہوئے تبادلوں کہا جاتا ہے کیونکہ یہاں ، منزل کی قسم ماخذ کی قسم سے بڑی ہو۔

نتیجہ:

یہ نتیجہ اخذ کیا جاسکتا ہے کہ ٹائپ کنورژن اور ٹائپ کاسٹنگ ، دونوں ہی ایک ڈیٹا ٹائپ کو دوسرے میں تبدیل کرنے کا کام انجام دیتے ہیں لیکن اس لحاظ سے مختلف ہیں کہ ٹائپ کاسٹنگ پروگرامر کے ذریعہ ہوتا ہے ، کاسٹ آپریٹر () کا استعمال کرتے ہوئے کیا جاتا ہے۔ ، اور اس میں کوئی آپریٹر استعمال نہیں ہوتا ہے۔