Я думаю, что это может быть достигнуто с помощью сценариев вместе с gcloud SDK , gcloud позволяет запускать ресурсы в GCP, также есть много опций / флагов, которые могут быть полезны для установки необходимых вам конфигураций. .
Надеюсь, это поможет.
Просто чтобы немного изменить метод svinto ...
Class Test
Private m_s
Public Default Function Init(s)
m_s = s
Set Init = Me
End Function
Public Function Hello()
Hello = m_s
End Function
End Class
Dim o : Set o = (New Test)("hello world")
Вот как я это делаю. К сожалению, перегрузки нет.
[править] Хотя, если бы вы действительно этого хотели, вы могли бы сделать что-нибудь вроде этого ...
Class Test
Private m_s
Private m_i
Public Default Function Init(parameters)
Select Case UBound(parameters)
Case 0
Set Init = InitOneParam(parameters(0))
Case 1
Set Init = InitTwoParam(parameters(0), parameters(1))
Else Case
Set Init = Me
End Select
End Function
Private Function InitOneParam(parameter1)
If TypeName(parameter1) = "String" Then
m_s = parameter1
Else
m_i = parameter1
End If
Set InitOneParam = Me
End Function
Private Function InitTwoParam(parameter1, parameter2)
m_s = parameter1
m_i = parameter2
Set InitTwoParam = Me
End Function
End Class
Что дает конструкторам ...
Test()
Test(string)
Test(integer)
Test(string, integer)
которые вы можете называть как:
Dim o : Set o = (New Test)(Array())
Dim o : Set o = (New Test)(Array("Hello World"))
Dim o : Set o = (New Test)(Array(1024))
Dim o : Set o = (New Test)(Array("Hello World", 1024))
Хотя немного проблематично.
Можно работать вокруг этого при наличии функции Init возврат самого объекта...
Class Test
Private m_s
Public Function Init(s)
m_s = s
Set Init = Me
End Function
Public Function Hello()
Hello = m_s
End Function
End Class
Dim o
Set o = (New Test).Init("hello world")
Echo o.Hello
Необходимо сделать это на двух шагах. Сценарий VB не поддерживает перегрузку, таким образом, Вы не можете изменить конструктора по умолчанию с новыми параметрами. То же идет для Vb6