Форум: "Основная";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
ВнизОverload Найти похожие ветки
← →
first_may (2004-08-25 10:21) [0]Здравствуйте, подскажите пожалуйста, где у меня ошибка при объявлении функций?
function CVResult(CVocabTemp: TCVocab): integer; overload;
function CVResult(CVocabTemp: TCVocab): string; overload;
Выдается: Declaration of "CVResult" differs from previous declaration
← →
Гаврила © (2004-08-25 10:39) [1]Overloaded routines must be declared with the overload directive and must have distinguishing parameter lists
← →
first_may (2004-08-25 10:45) [2]а как мне быть, если надо только разный тип при возвращении?
← →
Anatoly Podgoretsky © (2004-08-25 10:48) [3]function CVResultInt(CVocabTemp: TCVocab): integer; overload;
function CVResultStr(CVocabTemp: TCVocab): string; overload;
← →
first_may (2004-08-25 11:01) [4]То Anatoly Podgoretsky
В таком случае достаточно написать, так как функции разные
function CVResultInt(CVocabTemp: TCVocab): integer;
function CVResultStr(CVocabTemp: TCVocab): string;
А мне хотелось бы что бы просто изменить выходной параметр, в хелпе ведь написано про процедуры
procedure Store(X: Longint); overload;
procedure Store(X: Shortint); overload;
а почему так нельзя сделать с функциями?
← →
Rem (2004-08-25 11:01) [5][3]
// overload;
← →
Rem (2004-08-25 11:05) [6][4]
Можно.function Store(x: longint): boolean; overload;
function Store(x: shortint): boolean; overload;
Вым же ясно написали: перегружаемые процедуры, функции должны иметь разные входные параметры. Иначе что компилятору делать в случае:CVResultInt(CVocabTemp);
Как думаете, какая из Ваших функций будет вызвана?
← →
first_may (2004-08-25 11:11) [7]ясно, спасибо
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.09.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.031 c