Страница: 1 |
Страница: 1 |
Вопрос: Область видимости переменных в классе
Добавлено: 14.02.05 15:24
Автор вопроса: Barulya
Подскажите пожалуйста, каким образом мне объявить переменные в родительской структуре, так чтобы они были видны из дочерних, и не видны извне структуры, для того, чтобы при инициализации дочерних структур, они использовали локальные переменные (напрямую), а не свойства родительской структуры, например:
Protected Structure A
Private intID As Integer
Private strName As String
Public Property Name() As String
Get
Return strName
End Get
Set(ByVal Value As String)
strName = Value
End Set
End Property
Public Property ID() As Integer
Get
Return intID
End Get
Set(ByVal Value As Integer)
intID = Value
End Set
End Property
Public Sub New(ByVal iID As Integer, ByVal sName As String)
intID = iID
strName = sName
End Sub
Public Structure B
Private b_intID As Integer
Private b_strName As String
Private b_intNo As Integer
Public ReadOnly Property Name() As String
Get
Return b_strName
End Get
End Property
Public ReadOnly Property ID() As Integer
Get
Return b_intID
End Get
End Property
Public ReadOnly Property NO() As Integer
Get
Return b_intNo
End Get
End Property
Public Sub New(ByVal iNO As Integer)
b_intNo = iNO
b_intID = intID
b_strName = strName
End Sub
End Structure
End Structure
В данном случае при попытке присвоить значения:
b_intID = intID
b_strName = strName
Возникает ошибка:
Reference to a non-shared member requires an object reference.
Пытался зашарить intID и strName, но при создании еще одного экземпляра данной структуры (при заполнении, например, ComboBox'а), свойства второй ссылались на локальные переменные первой.
Ответы
Всего ответов: 2
Номер ответа: 1
Автор ответа:
danser
ICQ: 299287824
Вопросов: 76
Ответов: 209
Профиль | | #1
Добавлено: 14.02.05 23:39
Если я правильно понял проблему то попробуй обявлять переменные в родительском класе с атрибутом Protected, а не Private как ты это делал...
Номер ответа: 2
Автор ответа:
Barulya
Вопросов: 29
Ответов: 55
Профиль | | #2
Добавлено: 15.02.05 19:46
Пробовал, не помогает- все равно получается, что закрытые члены родительской структуры не зашаренные и из дочерних структур они не видны...