У меня проблема с унаследованными классами. Взгляните на следующий VB.NET 2.0 / VS 2005 код:
MustInherit Class templateclass
Public Shared x As String
End Class
Class child1
Inherits templateclass
End Class
Class child2
Inherits templateclass
End Class
Шаблонный класс имеет общую переменную x, которая, конечно, наследуется дочерними классами. Но мне интересно, что все дочерние классы имеют только один х! До сих пор я думал, что общие переменные являются общими только для экземпляров класса, а не для всех потомков. Это очень раздражает, потому что у меня есть базовый класс, который мне нужен в двух слегка отличающихся версиях, и они не должны «поделиться общими» переменными. А поскольку у классов много общих переменных, отслеживание каждой дочерней переменной было бы очень ... не элегантным и потребовало бы много работы.
У кого-нибудь есть лучшее решение для этой проблемы?
Заранее спасибо,
Сага