Помощь - Поиск - Пользователи - Календарь
Полная версия: ООП : Private, Public
Форум «Всё о Паскале» > Pascal, Object Pascal > Теоретические вопросы
klem4
Не могу понять одну вещь. Есть некоторый объект :

TObj = object
  private
    privateVar : integer;
end;


Если описание этого обекта я например запихну в модуль ObjUnit и в программе

uses ObjUnit;

var
  Obj : TObj;

begin
  Obj.privateVar := 5; 
end.


При попытке таким образом работать с переменной privateVar мне вежливо сообщит компилятор, что это невозможно, но при описании типа непосредственно в программе все будет отлично :

type
  TObj = object
    private
      privateVar : integer;
  end;
var
  Obj : TObj;

begin
  Obj.privateVar := 5; 
end.


Почему ?
volvo
Цитата(klem4 @ 21.08.2006 17:59)
Почему ?

Потому, что в Паскале директивы Private/Public работают на уровне модулей.
klem4
Спасибо wink.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.