নিম্নলিখিত ঘোষণার সাথে আপনার কাছে একটি ক্লাস রয়েছে তা কল্পনা করুন।
class A
{
public:
A();
private:
int m_value;
};
যখন কেউ "এম_ভ্যালু" এর মান পরিবর্তন করে আপনি প্রোগ্রামটি থামতে চান।
ক্লাসের সংজ্ঞাতে যান এবং এ এর কনস্ট্রাক্টরে একটি ব্রেকপয়েন্ট রাখুন
A::A()
{
... // set breakpoint here
}
একবার আমরা প্রোগ্রামটি বন্ধ করে দিয়েছিলাম:
ডিবাগ -> নতুন ব্রেকপয়েন্ট -> নতুন ডেটা ব্রেকপয়েন্ট ...
ঠিকানা: & (এটি-> মি_মূল্য)
বাইট গণনা: 4 (কারণ 4 টি বাইট রয়েছে)
এখন, আমরা প্রোগ্রামটি আবার শুরু করতে পারি। মান পরিবর্তন করা হলে ডিবাগারটি থামবে।
উত্তরাধিকারসূত্রে প্রাপ্ত ক্লাস বা যৌগিক ক্লাসগুলির সাথেও আপনি এটি করতে পারেন।
class B
{
private:
A m_a;
};
ঠিকানা: & (এটি-> m_a.m_value)
আপনি যে ভেরিয়েবলটির পরিদর্শন করতে চান তার সংখ্যাগুলি যদি না জানেন তবে আপনি আকারের অপারেটরটি ব্যবহার করতে পারেন।
উদাহরণ স্বরূপ:
// to know the size of the word processor,
// if you want to inspect a pointer.
int wordTam = sizeof (void* );
আপনি যদি "কল স্ট্যাক" দেখেন তবে আপনি এমন ফাংশনটি দেখতে পারেন যা ভেরিয়েবলের মান পরিবর্তন করে।