Главная страница
    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.005 c
2-1261117696
maximkok
2009-12-18 09:28
2010.02.21
Как применить тему xp(.theme) без предупреждения?


2-1261410151
Aleks
2009-12-21 18:42
2010.02.21
Динамически создавать каждый компонент или копировать объект


15-1260401856
Германн
2009-12-10 02:37
2010.02.21
Маленькая offtop шутка.


15-1258553129
test
2009-11-18 17:05
2010.02.21
Коллайдер


6-1212670677
leonidus
2008-06-05 16:57
2010.02.21
Добавление в программу функции скачивания совоих обновлений





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский