2015-06-15 46 views
1

我有以下結構:如何設置在C#結構領域中的斷點,在Visual Studio 2013

public struct MyStruct 
{ 
    public bool property1; 
    public bool property2; 
}; 

我想知道如何調試過程中斷裂時的property1變化值(不用getter/setter重寫它們作爲屬性,我不能那樣做)?

任何想法?

+4

這些是字段,而不是屬性。沒有setter/getter代碼來放置斷點 –

+0

首先,公共字段通常是一個壞主意。 – Rik

+0

@Rik並非總是如此。你爲什麼認爲他們是? –

回答

3

這些是字段,而不是屬性。它們被其他代碼直接修改,因此唯一可以放置斷點的地方是修改它們的代碼。

可以做什麼,是創建一個條件斷點,當條件變爲真或值改變時會斷開。這在How to: Specify a Breakpoint Condition中描述。本質上,您可以右鍵單擊某個斷點,然後從快捷菜單中單擊「Condition」。

這樣,您可以將條件斷點放置到任何可能會修改該字段的位置。再次,你不能放置在場上的斷點 - 它只是一個內存位置。

+0

謝謝,但我想在該領域設置一個斷點,因爲它實際上是一個對象圖,圖的某些部分被替換,存在多個實例,圖被髮送到本地代碼並在那裏修改,並且該圖是核心對於那些在任何地方都被使用和修改的應用程序,我無法找到誰對我嘗試調試的特定修改負責...所以,您的解決方案實際上是我的問題的原因:p謝謝! –

0

如果沒有太多地方正在寫字段,我會在那裏設置斷點。

相關問題