я в настоящее время преобразования из VB6 в C#, где ниже VB6 кода допускается:Ошибка левая сторона-оф-ан-уступке-должна-быть-а-переменной
Private Property Let gUnit(Optional bResolve As Boolean, aNoseHi)
gNoseLo(Optional parameter) = 0
End Property
Не разрешено:
void Test()
{
gNoseLo(false) = 0 //error occurs here
}
The gNoseLo
был определен в VB6, как Private Property Get gNoseLo(Optional bResolve As Boolean)
. Я не могу использовать подход публичного свойства в C#, так как есть параметры, поэтому я использовал метод. Каким будет правильный способ перекодировать gNoseLo
, чтобы принять присвоение значения и предотвратить ошибку?
Передайте значение в качестве дополнительного аргумента? –
И вам действительно нужен аргумент? Для чего это? Что делает функция? Может быть, вам стоит подумать о редизайне, когда вы переводите код? –
Оригинальный VB6 не должен выглядеть так, потому что это даже не действительный синтаксис. – Bob77