IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

> Проблема с переменными..., Не понимаю смысл...
Vardes
сообщение 21.11.2006 22:38
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 131
Пол: Мужской

Репутация: -  0  +


Подскажите в чём разница:
Код

type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
    end;
TInputVector1 = class(TObject)
  x1:real;
  end;


Код
[/code]
type
  TForm1 = class(TForm)
    Button1: TButton;
    Memo1: TMemo;
    procedure Button1Click(Sender: TObject);
    end;
TInputVector1 = class(TObject)
end;
  var
  Form1: TForm1;
  InputVector1:TInputvector1;
x1:real;


Не понимаю того,в чём разница,как обозначать переменную или как переменную класса или как var пар-р....
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 21.11.2006 22:53
Сообщение #2


Гость






Цитата
Не понимаю того,в чём разница,как обозначать переменную или как переменную класса или как var пар-р....
Смотри... Вот, например, можно сделать так:

type
tbuffer1 = class
size: integer
buf: array of byte;
...
end;
var
buf1: tbuffer1;

, а можно - так:
type
tbuffer2 = class
buf: array of integer;
...
end;
var
buf2: tbuffer2; size: integer;

И по первому и по второму варианту будет работать... НО: логически более правильный - первый вариант, т.к. класс должен содержать в себе то, что ему необходимо, а не общаться каждый раз с внешними переменными...

Чувствуешь разницу? Кроме этого, поля класса могут быть приватными (чего не так просто добиться во втором случае), они наследуются (в классе-потомке будет доступ к полю, а в постороннем классе - не будет)...
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 14.07.2025 23:19
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"