Desidero applicare DebuggerDisplayAttribute
per includere un valore dell'indirizzo di memoria. C'è un modo per visualizzarlo in formato esadecimale?La formattazione della stringa può essere utilizzata nel testo mostrato con DebuggerDisplay?
[DebuggerDisplay("Foo: Address value is {Address}")]
class Foo
{
System.IntPtr m_Address = new System.IntPtr(43981); // Sample value
System.IntPtr Address
{
get { return m_Address; }
}
}
questo display: Foo: Address value is 43981
Invece, mi piacerebbe il valore da visualizzare in esadecimale, come quella: Foo: Address value is 0xABCD
.
So che potrei applicare tutti i tipi di formattazione ignorando ToString()
, ma sono curioso di sapere se lo stesso è possibile con DebuggerDisplayAttributes.
Grazie in anticipo!
Mentre questo è possibile, consiglio di non farlo. Elimina la scelta di visualizzare numeri esadecimali o decimali. Se non si aggiunge il testo ad esso, è anche stampato con virgolette all'inizio e alla fine, quindi alla fine causerà "0xDEADBEEF" 'apparire nelle finestre del debugger, che a prima vista assomigliano a una stringa piuttosto che a un intero. –