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

Вниз

Не подскажите, как переводиться с С++ вот это...   Найти похожие ветки 

 
Cosinus ©   (2005-02-09 11:05) [0]

_GetNumDevices(&dwNumDevices);
Интересует знак& перед переменной.


 
VictorT ©   (2005-02-09 11:12) [1]

Значит, что функция может вернуть значение в аргумент.


 
uw ©   (2005-02-09 11:20) [2]

Это вызов функции, при этом передается адрес переменной dwNumDevices.


 
wal ©   (2005-02-09 11:32) [3]

Передача ссылки.
Для делфи в декларации процедуры этот параметр указываешь как var, а при вызове просто (dwNumDevices).

С уважением.


 
Romkin ©   (2005-02-09 11:32) [4]

Передача по ссылке :) Фактический аналог - var-параметры в Паскале


 
KSergey ©   (2005-02-09 12:45) [5]

Эта, люди...
Я вот читаю ваши ответы - и что-то не догоняю...
Все ответили разное. Где-то из одной оперы "вообще", но никак не на конкретный вопрос.

По-моему, правильно - лишь

> [2] uw ©   (09.02.05 11:20)
> Это вызов функции, при этом передается адрес переменной
> dwNumDevices.

Ведь написан именно вызов функции, но явно не прототип (нет типа). А потому говорить про var - не корректно. Ну только как общая аналогия, не имеющая ничего общего с конкретным случаем. Передается просто указатель на переменную, вот и все...


 
uw ©   (2005-02-09 12:59) [6]

wal ©   (09.02.05 11:32) [3]
Romkin ©   (09.02.05 11:32) [4]


То, о чем вы говорите, в С++ выглядит так:

void _GetNumDevices(int & aNumDevices);

А вызывается так:

_GetNumDevices(dwNumDevices);

Это действительно фактический аналог var-параметра.


 
Romkin ©   (2005-02-09 13:04) [7]

А, так? Сенькс. Значит, данный случай - аналог @ :))
_GetNumDevices(NumDevices: pointer); - типизованный, скорее всего PInteger
_GetNumDevices(@dwNumDevices);
Так? :)


 
uw ©   (2005-02-09 13:06) [8]

Да, у Cosinus © декларация примерно такая:

void _GetNumDevices(int * aNumDevices);

т.е. параметр - указатель.


 
Cosinus ©   (2005-02-09 13:43) [9]

Всем спасибо :)
> Romkin ©   (09.02.05 13:04) [7]
PDWord ;)


 
07BB:080Dh   (2005-02-09 13:56) [10]

Romkin ©   (09.02.05 13:04) [7]

GetNumDevices(var NumDevices: pointer);
_GetNumDevices(void* &wNumDevices);


 
марсианин ©   (2005-02-09 14:34) [11]


> void _GetNumDevices(int * aNumDevices);

_GetNumDevices(PDWORD dwNumDevices);
что эквивалентно
_GetNumDevices(unsigned * dwNumDevices);
по поводу возвращаемого типа однозначно ничего сказать нельзя..


 
Cosinus ©   (2005-02-09 15:20) [12]

Если кому интересно, нашел описание на нее. Спорам конец :)))
_GetNumDevices
Description: This function returns the number of connected to the host.

Prototype: _Status _GetNumDevices(LPDWORD NumDevices)

Parameters: NumDevices-Address of a DWORD variable that will contain the number of devices connected on return.

Return Value: DWORD


 
Romkin ©   (2005-02-09 16:46) [13]

В переводе, значит,
function _GetNumDevices(NumDevices: PDWORD): DWORD; stdcall;
Кстати, function _GetNumDevices(var NumDevices: DWORD): DWORD; stdcall; тоже проглотит и не поморщится :)) Вот только stdcall али cdecl?



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

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

Наверх




Память: 0.47 MB
Время: 0.045 c
14-1107504549
skiFF
2005-02-04 11:09
2005.02.27
два будоражащие меня сейчас пробела в моих знаниях


14-1107817812
Yozh_Programmer
2005-02-08 02:10
2005.02.27
Помогите найти песню


4-1105458325
Никита_
2005-01-11 18:45
2005.02.27
окна, сворачиваем/показвыаем


14-1106667413
ali_tash
2005-01-25 18:36
2005.02.27
как заставить windows использовать файл подкачки


3-1107157758
Scorpio
2005-01-31 10:49
2005.02.27
While not ADODataSet





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