Visual Basic 6 общедоступных переменных свойств - PullRequest
2 голосов
/ 27 августа 2009

Я работаю над старым проектом в VB6 с огромным объектом, все с открытыми переменными. Я хочу преобразовать эти открытые переменные в частные комбинации переменных / свойств. Есть ли инструменты, с помощью которых я могу сделать это преобразование? (Оптимально все переменные в классе сразу)

Спасибо

Ответы [ 3 ]

5 голосов
/ 27 августа 2009

Не делать преобразование, оно не нужно. Компилятор VB делает это автоматически для всех открытых классов (т. Е. Для всех классов, которые экспортируются в COM DLL), и это не требуется для всех других полей, поскольку они используются только для внутреннего использования, и нет никакой разницы между полем и свойством для пользователя.

VB6 - единственный язык, который делает это правильно, вообще не разрешая публичные поля и неявно преобразуя их.

Напомним: в открытых переменных VB6 нет ничего плохого, поскольку обычные недостатки открытых переменных к ним не относятся. В частности, они не нарушают инкапсуляцию.

3 голосов
/ 27 августа 2009

MZ-Tools - бесплатная надстройка, которая имеет функцию, позволяющую преобразовать открытую переменную в свойство.

1 голос
/ 27 августа 2009

Я не знаю ни одного инструмента рефакторинга для VB6, но я бы решил проблему, написав скрипт для сканирования исходного файла, поиска строк, соответствующих «Public Dim ...», и заменив эти строки соответствующими "Private Dim ..." и средства доступа к собственности.

...