C # код не использует указатели. Хотя можно написать C #, в котором используются указатели, этот код называется «небезопасным», и для использования этой функции в обычном коде очень мало причин, если таковые имеются.
Все классы на любом из языков .NET называются «ссылочными типами». Это означает, что везде, где вы видите этот тип, используемый в коде для переменной, члена или типа параметра, тогда значением этого объекта является ссылка , которая (из-за отсутствия лучшего термина) указывает на экземпляр типа. Другими словами, они функционируют очень похоже на указатели, но только в самом простом смысле (например, нет такой вещи, как «эталонная арифметика»).
Короче говоря, просто удалите звездочку из ваших объявлений, и ваш код будет работать так, как вы изначально предназначали для него. Хотя в вашем коде есть некоторые стилистические проблемы (код .NET условно PascalCased, а не camelCased, и лучше не выставлять переменные-члены напрямую, а использовать свойства), но это должно помочь вам.