Адрес памяти объекта в C#C#

Место общения программистов C#
Anonymous
Адрес памяти объекта в C#

Сообщение Anonymous »

У меня есть функция, написанная некоторое время назад (для .net 3.5), и теперь, когда я обновлен до 4.0 < /p>

Я не могу заставить ее работать. < /p>

Функция: < /p>

public static class MemoryAddress
{
public static string Get(object a)
{
GCHandle handle = GCHandle.Alloc(a, GCHandleType.Pinned);
IntPtr pointer = GCHandle.ToIntPtr(handle);
handle.Free();
return "0x" + pointer.ToString("X");
}
}
< /code>

Теперь, когда я его называю - memoryAddress.get (new Car ("blue")) < /p>

public class Car
{
public string Color;
public Car(string color)
{
Color = color;
}
}
< /code>

Я получаю ошибку: < /p>


Объект содержит непримененные или не лелевируемые данные. < /p>
< /blockquote>

Почему я больше не работает? Объекты?

Подробнее здесь: https://stackoverflow.com/questions/499 ... in-c-sharp

Вернуться в «C#»