VBA: инициализировать объект значениями? - PullRequest
19 голосов
/ 23 марта 2012

Я хочу иметь возможность инициализировать

CArticle со следующими свойствами:

Private pNumber As String
Private pQuantity As Double

с пустыми, предварительно определенными или текущими значениями. Как мне этого добиться? Я думаю о чем-то вроде:

Новый пустой CArticle

pNumber
pQuantity

Новый манекен CArticle

pNumber
pQuantity = 99999

Новый инициал CArticle(number, quantity)

pNumber = number
pQuantity = quantity

1 Ответ

26 голосов
/ 23 марта 2012

Это боль в шее, но это единственный способ сделать это.

Файл Статья

Option Explicit

Private pNumber As String
Private pQuantity As Double

Private Sub Class_Initialize()
    pNumber = vbNullString
    pQuantity = 0
End Sub

Public Sub InitializeWithValues(ByVal number As String, ByVal quantity As Double)
    pNumber = number
    pQuantity = quantity
End Sub

Public Sub InitializeDefaultValues()
    pNumber = vbNullString
    pQuantity = 99999
End Sub

и в вызывающем модуле

Dim art As New CArticle       ' Initialize value to empty
art.InitializeWithValues "Bowtie", 100     ' and assign values

Set art = New CArticle        ' Initialize values to empty
art.InitializeDefaultValues   ' Initialize values to default
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...