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