visual-studio - with - visual studio code download




ভিজ্যুয়াল স্টুডিও ডিবাগার ব্যবহার করে একটি মান পরিবর্তন যখন বিরতি (9)

আপনি unmanaged কোড একটি মেমরি watchpoint ব্যবহার করতে পারেন। যদিও এই পরিচালিত কোড পাওয়া যায় তবে নিশ্চিত না।

পরিবর্তনশীল উপর একটি ঘড়ি স্থাপন করার একটি উপায় আছে এবং শুধুমাত্র মান যখন পরিবর্তন যে ভিজ্যুয়াল স্টুডিও বিরতি আছে?

এটা চতুর রাষ্ট্র বিষয় খুঁজে পেতে এত সহজ করা হবে।

এই কাজ করা যাবে?

ব্রেকপয়েন্ট শর্তগুলির এখনও একটি ব্রেকপয়েন্ট সেট প্রয়োজন, এবং আমি বরং একটি ঘড়ি সেট এবং ভিজ্যুয়াল স্টুডিও রাষ্ট্র পরিবর্তন এ breakpoints সেট করা যাক।


আপনি ঐচ্ছিকভাবে পরিবর্তনশীলের জন্য = অপারেটর ওভারলোড করতে পারেন এবং নির্দিষ্ট অবস্থানে ওভারলোড হওয়া ফাংশনের ভিতরে ব্রেকপয়েন্টটি স্থাপন করতে পারেন।


আপনি যদি WPF ব্যবহার করেন তবে একটি দুর্দান্ত টুল রয়েছে: WPF ইন্সপেক্টর
এটি একটি WPF অ্যাপ্লিকেশনটিতে নিজেকে সংযুক্ত করে এবং সমস্ত বৈশিষ্ট্যগুলির সাথে নিয়ন্ত্রণের পুরো গাছটি প্রদর্শন করে, এটি আপনাকে কোনও সম্পত্তি পরিবর্তন করতে বাধা দেয় (অন্য জিনিসগুলির মধ্যে)।

কিন্তু দুঃখজনকভাবে আমি কোনও সরঞ্জাম খুঁজে পাইনি যা আপনাকে কোনও সম্পত্তি বা পরিবর্তনশীলের সাথে একই কাজ করতে দেয়।


আপনি সম্ভবত DebugBreak() ফাংশনের একটি চতুর ব্যবহার করতে পারেন।


পরিবর্তনশীল একটি সম্পত্তি মধ্যে পরিবর্তন করুন এবং সেট পদ্ধতিতে একটি ব্রেকপয়েন্ট যোগ করুন। উদাহরণ:

private bool m_Var = false;
protected bool var
{
    get { 
        return m_var;
    }

    set { 
        m_var = value;
    }
}

পিটার মার্টেনসেন লিখেছেন:

ভিজ্যুয়াল স্টুডিও 2005 মেনুতে:

ডিবাগ -> নতুন ব্রেকপয়েন্ট -> নতুন ডাটা ব্রেকপয়েন্ট

প্রবেশ করুন: & myVariable

অতিরিক্ত তথ্য:

স্পষ্টতই, সিস্টেমে অবশ্যই মেমরির কোন ঠিকানাটি দেখতে হবে তা অবশ্যই জানা আবশ্যক। তাই - myVariable (অথবা myClass.m_Variable ) এর প্রাথমিকীকরণের জন্য একটি স্বাভাবিক ব্রেকপয়েন্ট সেট করুন - সিস্টেমটি চালান এবং myClass.m_Variable বন্ধ হওয়া পর্যন্ত অপেক্ষা করুন। - এখন মেনু এন্ট্রি সক্ষম করা আছে, এবং আপনি &myVariable প্রবেশ করে &myVariable প্রবেশ করে ইনস্ট্যান্সটি ভেরিয়েবলটি দেখতে পারেন। এখন ঠিকানা ভাল সংজ্ঞায়িত করা হয়।

আমি ইতিমধ্যে একটি প্রদত্ত সমাধান ব্যাখ্যা করে ভুল কাজ করেছি যখন দুঃখিত। কিন্তু আমি একটি মন্তব্য যোগ করতে পারে নি, এবং এই সম্পর্কে কিছু মন্তব্য হয়েছে।


ভিজ্যুয়াল স্টুডিও 2005 মেনুতে:

ডিবাগ -> নতুন ব্রেকপয়েন্ট -> নতুন ডাটা ব্রেকপয়েন্ট

প্রবেশ করান:

&myVariable

সত্যিই পুরাতন পোস্ট কিন্তু কেউ যদি অজানা হয় ...

ভিজ্যুয়াল স্টুডিও 2015 এ , আপনি একটি স্বয়ংক্রিয়-সম্পন্ন সম্পত্তির set অ্যাক্সেসারে একটি ব্রেকপয়েন্ট set করতে পারেন এবং যখন সম্পত্তি আপডেট করা হয় তখন ডিবাগারটি ভাঙ্গবে

public bool IsUpdated
{
    get;
    set;    //set breakpoint on this line
}

হালনাগাদ

বিকল্পভাবে; @ আবদুল রাউফ মুজাহিদ মন্তব্য করেছেন যে স্বয়ংক্রিয়ভাবে বাস্তবায়িত সম্পত্তি যদি একক লাইনে থাকে তবে আপনি আপনার কার্সারটি get; বা set; এবং F9 আঘাত এবং একটি ব্রেকপয়েন্ট অনুযায়ী অনুযায়ী স্থাপন করা হবে। নিস!

public bool IsUpdated { get; set; }

2019 আপডেট করুন:

এটি এখন আনুষ্ঠানিকভাবে ভিজ্যুয়াল স্টুডিও 2019 প্রিভিউ ২। নেট কোর 3.0 বা উচ্চতর জন্য সমর্থিত। অবশ্যই, আপনাকে আইডিইয়ের পূর্বরূপ সংস্করণ ব্যবহার করার সম্ভাব্য ঝুঁকিগুলিতে কিছু চিন্তা করতে হতে পারে। আমি কল্পনাপ্রসূত ভবিষ্যতে এই সরকারী ভিজ্যুয়াল স্টুডিও অন্তর্ভুক্ত করা হবে।

https://blogs.msdn.microsoft.com/visualstudio/2019/02/12/break-when-value-changes-data-breakpoints-for-net-core-in-visual-studio-2019/

সৌভাগ্যবশত, ডেটা ব্রেকপয়েন্টগুলি আর একটি সি ++ এক্সক্লুসিভ নয় কারণ তারা এখন ভিজ্যুয়াল স্টুডিও 2019 প্রিভিউ 2 এ .NET কোর (3.0 বা তার বেশি) এর জন্য উপলব্ধ।






debugging