|
|
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
Добрый день. Сразу прошу прощения за видимо наивный вопрос (с этим никогда не сталкивался) пишу проект на делфи и есть у меня один модуль на С++ и его надо преобразовать в дельфийский, С++ знаю весьма удаленно есть там процедура Код: plaintext 1. 2. 3. 4. 5. по первым 2 параметрам всё ясно, насколько я понимаю 3-й указатель на функцию (возвращает integer), 4 - указатель на переменную и 5 - указатель на структуру Вот вопрос, как это будет выглядеть на делфи, особенно непонятен 3 параметр. Заранее спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 14:00 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
patrick1968Вот вопрос, как это будет выглядеть на делфи, особенно непонятен 3 параметр. Третий параметр - надо смотреть как объявлено DATA_HANDLER. Четвёртый параметр - Pointer. Пятый параметр - ^SpecialParameters. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 14:04 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
patrick1968, Псевдокод: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 14:08 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
DarkMaster, Тьфу ты... Невнимательно прочел, подумал, что тебе функцию как параметр нужно передать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 14:09 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
int __stdcall DataHandler(int Type,void *PZapis,void *PCon) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 14:47 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
patrick1968, Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Если ничего не напутал, то как-то так. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:08 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
спасибо и еще скажите пожалуйста char *ServerType как перевести ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:18 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
а UCHAR это видимо ansichar ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 15:19 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
patrick1968а UCHAR это видимо ansichar Нет, это Byte, всё правильно. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 16:41 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
patrick1968char *ServerType как перевести PByte? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 17:46 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
alekcvp, Или PAnsiChar, в зависимости от контекста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.05.2018, 17:47 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
Что-то совсем я в этих типах С++ запутался подскажите плиз какого типа должна быть дельфийская структура и какие значения должны быть присвоены чтобы было как в С++ на картинке ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2018, 16:39 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
вот описание структуры С++ Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. а вот моя структура (в ней видно что-то не верно) Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2018, 17:30 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
Наверно это как то так должно быть: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2018, 19:08 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
Поправочка скорее всего ServerAddress : PAnsiChar; Это указатель на массив байт, неизвестной длины(должно быть в документации). В этом Си все через жопу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2018, 19:17 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
на С++ float Popravka[6]; как будет на делфи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2018, 20:37 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
patrick1968на С++ float Popravka[6]; как будет на делфи? Код: pascal 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.05.2018, 20:59 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
а как в делфи будет выглядеть код char ServerAddress[300]; AnsiString AS; AS = EServerAddress->Text; strcpy(ServerAddress,AS.c_str()); похоже так? var ServerAddress : PAnsiChar; AS : AnsiString; begin AS := EServerAddress.Text; StrCopy(ServerAddress, AS); end; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2018, 10:11 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
patrick1968а как в делфи будет выглядеть код char ServerAddress[300]; AnsiString AS; AS = EServerAddress->Text; strcpy(ServerAddress,AS.c_str()); Не всё так просто. Исходный код - это C++ Builder?.. Просто AnsiString вроде не стандартный тип для C++, а в билдере - это класс-обёртка над PAnsiChar, как я понял. Близко-смысловой перевод будет вот таким: Код: pascal 1. 2. 3. 4. 5. 6. Однако что-то мне подсказывает, что в Delphi это можно сделать эффективнее, но для этого надо понимать весь код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2018, 11:39 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
И как обычно - говнокод, т.к. никто не контролирует что AS влезет в отведённые 300 байт для ServerAddres... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2018, 11:40 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
alekcvpAnsiString вроде не стандартный тип для C++совершенно верно alekcvpв билдере - это класс-обёртка над PAnsiCharне, над дельфовым стрингом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.05.2018, 11:47 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
Есть код на С++ Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Нужно воплотить в Делфи Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Что ложно быть тут? Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2018, 17:50 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
patrick1968Что ложно быть тут? всё почти. В гугле, кстати, полно ответов, ну ладно, один раз. unsigned char -> Byte // 100% UCHAR -> Byte // 99.99% unsigned short int -> Word // 100% Массивы в структуре ты вообще не объявил. Ладно, пример. ID_Datchik: Array[ 0 .. 2 ] of Byte; И еще должны совпадать выравнивание размеров полей (в настройках компилятора, плюс возможны прагмы). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2018, 18:01 |
|
||
|
Сопоставление Delphi и C++
|
|||
|---|---|---|---|
|
#18+
Вызов функции (например): Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2018, 18:05 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39650948&tid=2040747]: |
0ms |
get settings: |
8ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
55ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
87ms |
get tp. blocked users: |
2ms |
| others: | 211ms |
| total: | 405ms |

| 0 / 0 |
