Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.19;
Скачать: CL | DM;

Вниз

const при передаче в функцию/процедуру.   Найти похожие ветки 

 
delphiuser1   (2007-07-27 16:43) [0]

В каких случаях следует передавать данные в функцию или процедуру, применяя при этом const в передаче.

Я прочитал про const. Но не пойму, в разных случаях в почти одинаковых ситуациях применяют то const, то простую передачу по значению.

Т.е. например

procedure _msgbox(const msg: string);
begin
 ShowMessage(msg);
end;


и

procedure _msgbox(msg: string);
begin
 ShowMessage(msg);
end;


Вот в таком случае это одинаково эффективно? И вообще насколько лучше передавать значение по const если внутри функции, процедуры значение вход. параметра не меняется, ну как в примере выше.


 
Игорь Шевченко ©   (2007-07-27 16:46) [1]


> И вообще насколько лучше передавать значение по const если
> внутри функции, процедуры значение вход. параметра не меняется,
>  ну как в примере выше.


Всяко лучше. Во-первых компилятор ругаться будет, если в теле функции будет попытка изменения значения параметра, во-вторых, для некоторых типов время выполнения будет быстрее, в третьих, программисту не надо будет анализировать тело функции, чтобы понять, что параметр внутри нее не меняется.


 
stanislav ©   (2007-07-27 16:46) [2]

В таком да.
Если Const значит внутри процедуры ты ее не изменишь, но помоему по умолчанию const и есть.


 
Сергей М. ©   (2007-07-27 16:47) [3]

Справку на тему "Constant parameters" ты уже проштудировал ?



Страницы: 1 вся ветка

Текущий архив: 2007.08.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
11-1168179075
Trible
2007-01-07 17:11
2007.08.19
поменять caption ы всех пунктов Меню


2-1185432822
fisherman
2007-07-26 10:53
2007.08.19
по поводу цикла for.. to...do


1-1181524266
Yus
2007-06-11 05:11
2007.08.19
Помогите с RichEdit


15-1184071382
Kolan
2007-07-10 16:43
2007.08.19
Использование DataLayer посоветуйте литературу.


15-1185163157
Voproshay
2007-07-23 07:59
2007.08.19
Посоветуйте как лучше сделать. XML