Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2010.02.21;
Скачать: [xml.tar.bz2];

Вниз

Чудеса при объявлении функции   Найти похожие ветки 

 
EvChul ©   (2009-03-28 18:33) [0]

Вот так все нормально

...
interface

....
function GetConfigParameter(Param: string; Count: PLongWord): string;
...

implementation

...
function GetConfigParameter(Param: string; Count: PLongWord): string;
begin
...
end;

....


А если вот так

interface

....
function GetConfigParameter(Param: string; Count: PWord): string;
...

implementation

...
function GetConfigParameter(Param: string; Count: PWord): string;
begin
...
end;


то компилятор выдает ошибки
[Pascal Error] AppUtils.pas(371): E2267 Previous declaration of "GetConfigParameter" was not marked with the "overload" directive
и
[Pascal Error] AppUtils.pas(28): E2065 Unsatisfied forward or external declaration: "GetConfigParameter"

Юзаю TurboDelphi Professional

Это я глючу или Делфи?


 
Anatoly Podgoretsky ©   (2009-03-28 18:43) [1]

> EvChul  (28.03.2009 18:33:00)  [0]

Мало кода, но видимо у тебя две функции GetConfigParameter


 
EvChul ©   (2009-03-28 18:53) [2]

[1] Anatoly Podgoretsky ©  

Была такая мысль. Специально завел функцию, имя которой заведомо не может повториться в проекте (случайный набор букв). Результат тот же. То есть как только PWord меняю на PLongWord все работает.

У кого есть TurboDelphi Professional, воспроизвести получится?

P.S. Все последние апдейты у меня стоят.


 
EvChul ©   (2009-03-28 19:04) [3]

В пустом проекте все работает безо всяких чудес.
Но в данном конкретном модуле не могу завести ф-ю с таким набором параметров.
Вот прям щас я ее обозвал

function tyagsbkbfluisvlua(Param: string; Count: PWord): string;

Ругается


 
EvChul ©   (2009-03-28 19:07) [4]

Воспроизводится на пустом проекте вот так:
Заводим новый юнит. Он выглядит во так

unit Unit2;

interface

function TestFunc(Param: string; Count: PWord): string;

implementation

uses
 Forms, SysUtils, ShlObj, Windows, TlHelp32, Dialogs,
 Variants, Classes, StrUtils, DBTables, BDE, DB;

function TestFunc(Param: string; Count: PWord): string;
begin

end;

end.


 
Riply ©   (2009-03-28 19:08) [5]

> [0] EvChul ©   (28.03.09 18:33)
> Это я глючу или Делфи?

Все очень просто: например, PWord(выше implementation) <> PWord(ниже implementation)
:)

Смотри декларации


 
EvChul ©   (2009-03-28 19:11) [6]

Понял, в каком-то из модулей PWord переопределяется. От же ш блин.


 
Плохиш ©   (2009-03-29 01:06) [7]

Для поиска досточно выбрать в контекстном меню пункт перейти к декларации.



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

Форум: "Основная";
Текущий архив: 2010.02.21;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.009 c
2-1261392187
Труженик
2009-12-21 13:43
2010.02.21
Мастера подскажите по Acces mdb


1-1237987586
Валигози
2009-03-25 16:26
2010.02.21
Как прервать консольное приложение по Ctrl+C ?


2-1258016335
Tornado
2009-11-12 11:58
2010.02.21
Не могу сменить значек приложения


3-1234936713
тимохов
2009-02-18 08:58
2010.02.21
Как обновлять TAdoTable в одной форме, при изменении в другой?


2-1261220565
cosinus
2009-12-19 14:02
2010.02.21
Вопрос про Object Inspector и parent





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский