|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Возникла тут у меня необходимость перевести одну программу с Делфи на Си, так не сложная но тем не менее. Си практически не знаю, так на допотопном уровне, естественно прошу помощи. есть фрагмент Делфи Код: pascal 1. 2. 3. 4. 5.
Как это будет выглядеть на Си. Сорри за банальность. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2021, 17:09 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Добрый день. Возникла тут у меня необходимость перевести одну программу с Делфи на Си, так не сложная но тем не менее. Си практически не знаю, так на допотопном уровне, естественно прошу помощи. есть фрагмент Делфи uses IniFiles; ... var PSIni : TInifile; ... PSIni := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'PNG.ini'); Как это будет выглядеть на Си. Сорри за банальность. Спасибо. Это смотря для чего тебе нужен TIniFile. Например, запись строки данных в .ini фал может выглядеть так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2021, 18:36 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Добрый день. Возникла тут у меня необходимость перевести одну программу с Делфи на Си, так не сложная но тем не менее. Си практически не знаю, так на допотопном уровне, естественно прошу помощи. есть фрагмент Делфи uses IniFiles; ... var PSIni : TInifile; ... PSIni := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'PNG.ini'); Как это будет выглядеть на Си. Сорри за банальность. Спасибо. Используй C++ Builder, там такое же API . Иначе устанешь переписывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2021, 19:26 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Я в принципе так и делаю. Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.03.2021, 22:50 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Добрый день. Возникла тут у меня необходимость перевести одну программу с Делфи на Си, так не сложная но тем не менее. Си практически не знаю, так на допотопном уровне, естественно прошу помощи. есть фрагмент Делфи uses IniFiles; ... var PSIni : TInifile; ... PSIni := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'PNG.ini'); Как это будет выглядеть на Си. Сорри за банальность. Спасибо. Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
09.03.2021, 17:45 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Добрый день. Возникла тут у меня необходимость перевести одну программу с Делфи на Си, так не сложная но тем не менее. Си практически не знаю, так на допотопном уровне, естественно прошу помощи. есть фрагмент Делфи Как это будет выглядеть на Си. Сорри за банальность. Спасибо. Код: plaintext 1. 2. 3. 4. 5.
уверен, тебе стало легче... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 09:58 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
ну я patrick1968 Добрый день. Возникла тут у меня необходимость перевести одну программу с Делфи на Си, так не сложная но тем не менее. Си практически не знаю, так на допотопном уровне, естественно прошу помощи. есть фрагмент Делфи uses IniFiles; ... var PSIni : TInifile; ... PSIni := TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'PNG.ini'); Как это будет выглядеть на Си. Сорри за банальность. Спасибо. #include "IniFiles.hpp" TIniFile* PSIni; PSIni = new TIniFile(ExtractFilePath(ParamStr(0)) + "PNG.ini"); Блин, я опоздал ): ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 09:59 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
MasterZivБлин, я опоздал ): Но в этот раз намного меньше чем обычно. Прогресс. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 13:34 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
MasterZiv ну я пропущено... #include "IniFiles.hpp" TIniFile* PSIni; PSIni = new TIniFile(ExtractFilePath(ParamStr(0)) + "PNG.ini"); Блин, я опоздал ): [spoiler] ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 13:45 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Просто в качестве компилятора взяли clang. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 13:47 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Просто в качестве компилятора взяли clang. Не просто взяли, там же фирменные расширения были. Допиленный он там. Правда, был очень отстающим по версии, что то вроде clang 3.4 в Берлине. Upd 5.0 в Сиднее ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 13:52 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Продолжаю перенос проги на С Buider из Delphi и естественно "уперся" прошу помощи, итак есть у меня в Делфи структура Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
есть еще следующий класс, соответственно конструктор и функция для чтения Код: 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. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43.
далее в программе я из запроса, данные записываю а объекты строк Комбобокса, Код: pascal 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.
как весь этот процесс организовать в C Builder, структуру створил Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
наверное правильно, а вот дальше, конструкторы и прочее? никак. Заранее сильно благодарен ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 17:55 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968, Один в один и пиши. Вверху строка дельфи а внизу сишная. Языки очень похожи. Это не пыха)) Конструктор сишный забыл? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 18:02 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Страуструп "Язык программирования C++". ~1100 страниц. 10-ть страниц утром, 10-ть страниц вечером. Задания выполнять не надо, но нужно подумать как бы ты их делал. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 19:14 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Продолжаю перенос проги на С Buider из Delphi ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 19:21 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Dimitry Sibiryakov пропущено... Что, совсем не можешь догадаться заменить "begin"/"end" на "{"/"}" и ":=" на "="? Может, ну его нафиг, программирование это?.. Я вижу юмор зашкаливает, иль ты считаешь людей за дебилов. Если бы было так просто, то обращения в форум не было. пробуй в своих прогах менять присвоить на равно и наоборот, наверно у тебя все проги такого уровня, а то хамить все мастера Модератор: Удалено Но какой либо базовый учебник по С++ 2003, без подробностей, придется прочитать. Там делов на денёк, если не лезть в новые стандарты (с++11 и новее). ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 22:35 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Модератор: Друзья. Снижаем градус напряжения. patrick1968Если бы было так просто, то обращения в форум не было. Но... это и в самом деле так просто. Что именно у тебя не получилось? SiemarglТам делов на денёк Откуда там "денёк", если всё реально делается тупым подстрочным переводом конструкций. Я бы понял если бы там задействовались возможности, отсутствующие в С++, типа создания объекта заранее неизвестного класса и всё такое, но код же переводится 1-в-1. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.03.2021, 23:12 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Откуда там "денёк", если всё реально делается тупым подстрочным переводом конструкций. Я бы понял если бы там задействовались возможности, отсутствующие в С++, типа создания объекта заранее неизвестного класса и всё такое, но код же переводится 1-в-1. Очевидно же что тупой заменой begin/end -> {} и := -> = там мало чего можно добиться. Например, ключевое слово `with`. Я о нём регулярно вспоминаю, только не помню что я вспоминаю: Паскаль или C#. :) Код: pascal 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2021, 00:27 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
petravНапример, ключевое слово `with`. А что с ним? Берётся текст вплоть до do, куть здеся - пасть всюду до самого end. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2021, 01:19 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov petravНапример, ключевое слово `with`. А что с ним? Берётся текст вплоть до do, куть здеся - пасть всюду до самого end. Так это же знать нужно. Там в паскалевском коде ещё куча приколов. Вызов методов без кавычек (что-то бейсик вспомнился), кавычки одинарные на двойные заменить. Короче, знать нужно обое два языка. Простой заменой не обойдёшься. Только книга! ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2021, 01:30 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Вызов методов без скобок, в смысле. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2021, 01:34 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Код: plaintext 1. 2. 3.
Код: plaintext 1. 2. 3.
Delphi-ийский тип single соответствует C++-ному типу float (размер 4 байта). Оборачивать структуру TypeDevice в класс, производный от класса TObject, необязательно. Перепишите Delphi-код без with, в C++ аналога нет. Потом всё просто. В цикле: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
Потом, чтобы достать info из combo box-а: Код: plaintext 1.
Потом, по-хорошему, перед уничтожением combo box-а, надо пройтись в цикле, и уничтожить все созданные экземпляры структуры TypeDevice: Код: plaintext 1. 2. 3. 4.
Можно это не делать, но тогда будет утечка памяти. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2021, 01:50 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
petrav Вызов методов без скобок, в смысле. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.03.2021, 07:06 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Петру Седову огромное спасибо. Вот это реальная помощь и ничего лишнего. Большой респект!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2021, 14:24 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Знатоки подскажите плиз, где RAD STUDIO содержит Temp файлы, а то у меня рабочий проект вдруг свалился в "Error detected (LME288) Unable to perform link", на форумах погуглил - рекомендуют темп вычистить и проект пересобрать ... |
|||
:
Нравится:
Не нравится:
|
|||
16.03.2021, 18:53 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Хотя проблема даже не в проекте. Т.к. создаю новый проект и запускаю выполнение. Должна ведь просто открыться пустая форма, а в результате ... |
|||
:
Нравится:
Не нравится:
|
|||
17.03.2021, 12:35 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968, https://stackoverflow.com/questions/28929516/how-to-fix-lme288-unknown-heap-name-warning Надо обновиться ... |
|||
:
Нравится:
Не нравится:
|
|||
17.03.2021, 12:50 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. И снова столкнулся с непонятной проблемой - нужно открыть файл Excel (не понял формирование строки) это так с подстановкой - файл существует Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
в результате ошибка - почему то преображается строка ... |
|||
:
Нравится:
Не нравится:
|
|||
26.03.2021, 21:50 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2021, 01:32 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Попробовал ваш совет, к сожалению ситуация не поменялось и то же самое сообщение об ошибке (как-то строка с именем странно там представлена) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2021, 10:45 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968, Программа Юникодная ? А то String это одно, AsAnsiString другое, а Variant.BSTR (параметр OlePropertyGet) - третье. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2021, 16:09 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Siemargl, если там в пути файла только символы из ASCII-подмножества (английские буквы, цифры), то по идее должно быть без разницы, ANSI-кодировка (code page 1251, если Windows настроена на русский язык) или кодировка UTF-16. Вот это очень странно: patrick1968 Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.03.2021, 20:57 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Пётр Седов patrick1968 Код: plaintext 1. 2. 3.
Код: plaintext 1. 2. 3.
Delphi-ийский тип single соответствует C++-ному типу float (размер 4 байта). Оборачивать структуру TypeDevice в класс, производный от класса TObject, необязательно. Перепишите Delphi-код без with, в C++ аналога нет. Потом всё просто. В цикле: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
Потом, чтобы достать info из combo box-а: Код: plaintext 1.
Потом, по-хорошему, перед уничтожением combo box-а, надо пройтись в цикле, и уничтожить все созданные экземпляры структуры TypeDevice: Код: plaintext 1. 2. 3. 4.
Можно это не делать, но тогда будет утечка памяти. Добрался в программе до момента когда необходимо прочитать из Combo, выбрал элемент и при Код: plaintext 1.
В переменную записывается всегда последний элемент Combo, хотя визуально всё верно и последовательность отображения правильная. Из делфи также понятно, что ItemIndex - это индекс выбранного элемента и он правильное значение имеет, а вот вся остальная информация неверная ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2021, 19:13 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Значит ты где-то испортил тот объект на который указывает этот указатель. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2021, 19:22 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Может здесь только, больше нигде не трогается Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
тут Combo формируется из запроса ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2021, 22:16 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
И еще такое преобразование MaxVal = StrToFloat(StringReplace(edTr11->Text,".",",",[rfReplaceAll,rfIgnoreCase])); выдает синтаксическую ощибку ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2021, 22:35 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 И еще такое преобразование MaxVal = StrToFloat(StringReplace(edTr11->Text,".",",",[rfReplaceAll,rfIgnoreCase])); выдает синтаксическую ощибку TReplaceFlags() << rfReplaceAll << rfIgnoreCase ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2021, 23:08 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968тут Combo формируется из запроса И в точности как ты и написал в этом коде: значение каждой следующей записи заменяет предыдущие. И так до последней записи. ЧиТД. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2021, 00:23 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 В переменную записывается всегда последний элемент Combo, Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Кстати, для очистки combo box-а лучше сделать отдельный метод: Код: plaintext 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2021, 00:54 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Все советы помогли - огромное спасибо. В дальнейшей работе столкнулся еще с одной вещью, наверное пустяк для профи есть оператор Код: plaintext 1.
проверяю на выходе всё верно -6.5 далее это число пишу в ячейку Excel (тип общий) Код: plaintext 1. 2. 3. 4. 5. 6. 7.
Но в итоге в ячейку записывается строка "-6,58229" Почему так? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2021, 16:08 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Но в итоге в ячейку записывается строка "-6,58229" Почему так? Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
31.03.2021, 01:22 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Понял. спасибо сам невнимательный ... |
|||
:
Нравится:
Не нравится:
|
|||
31.03.2021, 18:42 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Еще прошу помощи. Задачка банальная, но что-то сходу в интернете, ничего подходящего не нашел для примера нужно создать динамический массив переменной длины, т.е. в начале не знаем сколько будет элементов, каждый элемент float и затем в цикле увеличивать размерность на 1 и заполнять каким-нибудь новым значением, ну и потом очистить память. Заранее спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2021, 14:47 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Добрый день. Еще прошу помощи. Задачка банальная, но что-то сходу в интернете, ничего подходящего не нашел для примера нужно создать динамический массив переменной длины, т.е. в начале не знаем сколько будет элементов, каждый элемент float и затем в цикле увеличивать размерность на 1 и заполнять каким-нибудь новым значением, ну и потом очистить память. Заранее спасибо. Расскажите, пожалуйста - кто и зачем заставляет вас решать такие нечеловечески сложные задачи? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.04.2021, 16:05 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Я так понимаю последний пост - это сарказм. Очевидно написал его человек всезнающий и всемогущий, но которому абсолютно нечем заняться, но есть дикое желание сделать гадость. Погуглил по векторам, в принципе понятно и приемлемо за одним исключением, создал вектор и заполнил числами Код: plaintext 1. 2. 3. 4. 5. 6. 7.
Проверяю, после очистки, а там как было 4 элемента, так и осталось (вот здесь непонятно), что неужели правильнее четыре раза делать pop_back()? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2021, 12:23 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968Проверяю, после очистки, а там как было 4 элемента, так и осталось Не тем методом проверяешь. Вкуривай разницу между size() и capacity(). Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2021, 13:03 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Так мне надо чтобы список элементов вектора стал пустым и в дальнейшем его надо было наполнять с нуля, а после clear() ранее занесенные элементы не удалились. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2021, 14:38 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Удалились. Повторяю медленно: вкуривай разницу между size() и capacity() . Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2021, 14:58 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Так мне надо чтобы список элементов вектора стал пустым и в дальнейшем его надо было наполнять с нуля, а после clear() ранее занесенные элементы не удалились. А как вы определили, что они не удалились? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2021, 16:38 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Разобрался, спасибо. Вот тут еще у меня заминка есть фрагмент Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
кусок, что по IF оставил написанным на Delphi, а как такая подстановка будет в CBuilder ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2021, 16:40 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
dynamic_cast Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2021, 18:05 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Выглядеть будет так? Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2021, 18:31 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968, dynamic_cast<TEdit*>(...) проверяет реальный тип объекта, правда ли что объект класса TEdit, или производного. Если нет, то возвращает NULL (nullptr в современном C++). static_cast<TEdit*>(...) не проверяет реальный тип объекта, а верит на слово программисту. Поэтому можно так: Код: plaintext 1. 2. 3. 4. 5. 6.
assert -- отладочная проверка для debug build-а. В release build-е (когда определён глобальный макрос NDEBUG) выражение в assert-е не вычисляется. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2021, 22:10 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Пётр Седов, Мне иногда кажется, что я копипаст вижу "аналоговым" способом. Как картинку. Даже не читая кода. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2021, 22:16 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Пётр СедовЕсли нет, то возвращает NULL (nullptr в современном C++). Он в принципе способен выкидывать std::bad_cast и только в этом случае является аналогом дельфийского as. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2021, 00:39 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Он в принципе способен выкидывать std::bad_cast Dimitry Sibiryakov и только в этом случае является аналогом дельфийского as. Код: pascal 1. 2. 3. 4. 5. 6. 7. 8.
... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2021, 01:17 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый вечер. Столкнулся тут я снова с непонятным. Нужно было мне настроить отображение ячеек StringGrid, ну я по обыкновению Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
на что у меня на заголовке процедуры вываливается ошибка [bcc32 Error] Main.cpp(808): E2015 Ambiguity between 'Gridseh::TGridDrawState' and 'Vcl::Grids::TGridDrawState' Я так понял, тут какое то разночтение типов, только что с этим делать? Заранее благодарен. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.04.2021, 22:14 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968, явно специфицировать тип параметра Gridseh::TGridDrawState State ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2021, 00:49 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Код: plaintext 1.
Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2021, 01:24 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Спасибо за подсказки - проделал в заголовке MainForm.h также прописал void __fastcall sgMainDrawCell(TObject *Sender, int ACol, int ARow, TRect &Rect, Gridseh::TGridDrawState State); но получил ошибку [bcc32 Error] Main.h(118): E2090 Qualifier 'Gridseh' is not a class or namespace name ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2021, 21:29 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
очевидно надо как-то правильно прописать пространство имен? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2021, 21:32 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968, надо в MainForm.h написать include до прототипа функции: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8.
В заголовочном файле (который написан авторами библиотеки) должно быть это: Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.04.2021, 02:16 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Спасибо за разъяснение просто сделал Код: plaintext 1. 2.
и всё сработало как надо ... |
|||
:
Нравится:
Не нравится:
|
|||
13.04.2021, 13:34 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Еще ситуация, непонятная получается. Регулярно при запуске приложения возникает ошибка "access violation". Но потом спустя время, ну может при перезагрузке IDE или компа. Не изменяя никак приложение всё нормально. Чем это объяснено. Уж больно глюк напоминает? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2021, 15:59 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Добрый день. Еще ситуация, непонятная получается. Регулярно при запуске приложения возникает ошибка "access violation". Но потом спустя время, ну может при перезагрузке IDE или компа. Не изменяя никак приложение всё нормально. Чем это объяснено. Уж больно глюк напоминает? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2021, 16:10 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968Уж больно глюк напоминает? Это и есть глюк. В твоей программе. Отлаживайся. Адрес в ошибке выводится, сопоставить его с исходниками - простая техническая задача. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2021, 16:22 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968, Ловить надо. Это наша работа. Оберни код при старте в try и лови ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2021, 16:53 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
AV не ловится try. Да и толку от его поимки ещё меньше, чем от простого сообщения об ошибке. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2021, 17:04 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov AV не ловится try. Да и толку от его поимки ещё меньше, чем от простого сообщения об ошибке. Ты новичку предложил дамп расшифровать. Я предложил занятся пошаговой отладкой. Дай тест на то что не ловится. Я проверю. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2021, 17:47 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
PetroNotC SharpДай тест на то что не ловится. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9.
Ну и удачи в отладке этого: Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2021, 17:51 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Пошаговая работает ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2021, 17:59 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Глобальные методы и переменные не пишу (почти) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2021, 18:00 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Логгер P7 отлично останавливается на строке из под студии. Всяко легче чем лечить по фото с AV. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2021, 18:14 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Еще нужна помощь в разработке немного переписываю конструктор формы на делфи было так Код: pascal 1. 2. 3. 4. 5.
ну и соответсвенно при вызове Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
а как в Си это смастерить? Спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2021, 19:33 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968, Ты начинай писать. Что ты ждешь прямо копи паст банальный. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.04.2021, 19:41 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Код: pascal 1. 2. 3. 4. 5.
Код: plaintext 1. 2. 3. 4. 5. 6.
Код: plaintext 1. 2. 3. 4. 5. 6.
patrick1968 Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2021, 02:03 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Пётр Седов Примерно так: Прекрасный код, как и изначальный... ... |
|||
:
Нравится:
Не нравится:
|
|||
21.04.2021, 10:47 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Громадный респект за помощь. Не мог найти решение по синтаксису еще одного вопроса. Нужно поместить картинку из файла в объект Picture в Fastreport, на делфи было так Код: pascal 1.
но в С++ frxReport1->FindObject('Picture4') нет Picture и LoadFromFile тоже хотя можно через поток, но это слишком нагромождено, может есть более простое и правильное решение? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2021, 14:58 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Код: pascal 1.
Код: pascal 1.
это приведение типа. В C++ будет так: Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
24.04.2021, 17:46 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Ну примерно так я и представлял сделал следующее Код: plaintext 1. 2. 3. 4. 5. 6.
Пришлось делать через поток ,но всё-таки, что-то пошло не так получается ошибка [bcc32 Error] Sert.cpp(122): E2031 Cannot cast from 'void' to 'TfrxPictureView *' - что-то я не допонял ... |
|||
:
Нравится:
Не нравится:
|
|||
25.04.2021, 11:15 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Скобки надо расставлять правильно, а не от балды. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
25.04.2021, 12:21 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Ошибку понял - LOadFrom за скобками быть должен Еще растолкуйте, пожалуйста такую тему, просто привычка от делфи в свете видимости переменных есть у меня структура, объявленная в разделе PUBLIC в файле abc.h Код: plaintext 1. 2. 3. 4.
в форме (при создании) определяю массив TMyPoint* Points = new TMyPoint[3]; и мне нужно, что бы он был виден по всех процедурах формы единообразно, как его нужно представлять в этих формах? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.04.2021, 12:55 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968Ошибку понял - LOadFrom за скобками быть должен А что, в оригинальном тексте на Дельфи он был внутри скобок?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
25.04.2021, 13:08 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
про делфи - это к другому вопросу ... |
|||
:
Нравится:
Не нравится:
|
|||
25.04.2021, 13:13 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 Добрый день. Громадный респект за помощь. Не мог найти решение по синтаксису еще одного вопроса. Нужно поместить картинку из файла в объект Picture в Fastreport, на делфи было так Код: pascal 1.
но в С++ frxReport1->FindObject('Picture4') нет Picture и LoadFromFile тоже хотя можно через поток, но это слишком нагромождено, может есть более простое и правильное решение? Спасибо. А в самом отчете если, типа: Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.04.2021, 14:00 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Ну да, тут есть варианты Я тут спрашивал по массиву, поможете? А то мне непонятно почему теряются значения массива. Наверное неверное объявление, при показе формы они проставляются, а в другой процедуре теряют значения. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.04.2021, 15:15 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
Добрый день. Для отображения картинки в отчете делаю следующее Код: plaintext 1. 2. 3. 4. 5. 6. 7.
В последнем операторе при выполнении ошибка, что файл неверного типа, очевидно, что у frxReport1->FindObject("Picture4") нет Picture, как в делфи, тогда как же поступить? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.04.2021, 17:56 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968, а типа такого: Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.04.2021, 00:22 |
|
от Delphi к CPP
|
|||
---|---|---|---|
#18+
patrick1968 в форме (при создании) определяю массив TMyPoint* Points = new TMyPoint[3]; и мне нужно, что бы он был виден по всех процедурах формы единообразно, как его нужно представлять в этих формах? Код: plaintext 1. 2. 3. 4. 5. 6.
Если длина не известна на этапе компиляции, то можно использовать std::vector: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
... |
|||
:
Нравится:
Не нравится:
|
|||
28.04.2021, 02:29 |
|
|
start [/forum/topic.php?all=1&fid=57&tid=2017224]: |
0ms |
get settings: |
10ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
96ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 187ms |
0 / 0 |