Poiché .NET non utilizza lo stile C null
s per terminare una stringa, come posso mantenere la stringa allocata, ma modificarne la lunghezza utilizzando codice non sicuro?Codice non sicuro per modificare la lunghezza (tramite la mutazione!) Di un oggetto String?
Come ho capito .NET utilizzando un'intestazione di 20 byte per ogni stringa, presumibilmente questo è dove viene memorizzata la lunghezza della stringa, c'è comunque la possibilità di modificare direttamente questa lunghezza? Quindi .NET manterrà la stringa in memoria ma quando chiamo .Length
restituirà lo .Length
che desidero.
se questo è possibile, anche sarebbe interessante ascoltare tutti pazzi possibili effetti collaterali di questo
UPDATE
sto provando raggiungere questo obiettivo senza l'utilizzo di riflessione.
Nota che le stringhe sono .Net terminazione null. – SLaks
Per cosa ti serve? – Jacob
@jacob un pessimo esperimento sulla gestione della memoria :) Cercando di allocare una grande porzione di memoria e riutilizzarla costantemente senza evitare la frammentazione LOH. –