powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Оператор вхождения во множество
14 сообщений из 14, страница 1 из 1
Оператор вхождения во множество
    #39874549
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, плиз, для эмбаркадеровского с++ билдера, что будет являться аналогом оператора in (x in XSet, где x и XSet переменные соответствующих Дельфийских типов, объявления которых оставлены в паскалевской части проекта). Может макрос какой встроенный есть?
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874557
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А погуглить?..
https://stackoverflow.com/questions/14810555/how-to-use-delphi-in-operator-in-c-builder
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874688
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Спасибо, всегда начинаю с гугленья, в этот раз что-то не нашел.
Ну а тогда такой ещё вопрос, - на паскале, к примеру было:
S: AnsiString;
PC: PAnsiChar := PAnsiChar(S); // как понимаю, такой синтаксический сахар с автоматической адресацией на первый, а не нулевой элемент

На билдера на такое ругается:
AnsiString S;
char *PC = PAnsiChar(S); // cannot cast from AnsiString to char *
Приходится через жо:
char *PC = &S[1];

Нет ли чего нибудь поэлегантнее? А то подобным образом и ошибиться недолго, при массовом применении подобных конструкций.
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874692
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad F,
В дельфи указатели тоже не часто применяют.
Цель какая была указателя на 1 элемент?
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874725
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

В первом элементе в System::AnsiString как раз и начинается хранимая строка, завершающаяся терминальным нулем. Целью преобразования в char* (непосредственный аналог паскалевского PAnsiChar, по крайней мере в RAD Studio XE5) является передача соответствующих значений в функции с сигнатурой char* без попутного конструирования новых строк и соответствующих обращений к менеджеру памяти.
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874729
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad Fкак понимаю, такой синтаксический сахар с автоматической адресацией на первый, а не
нулевой элемент

Нет, это ты совершенно неправильно понимаешь. У AnsiString в паскале нет нулевого элемента.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874745
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad F,
То есть там от безысходности?
Когда есть дельфи.ехе и сишная.dll.
Так?
А тут вы зачем "массово применяете"?
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874754
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,
Ну нет, так нет. Раньше по нему длина лежала, а сейчас даже не хочу загадывать. Факты таковы, что данные располагаются с первого и в паскале функция преобразования PAnsiChar() (реализация ее не видна) это все правильно учитывает, а в билдере, в студии той же версии ее применение приводит к выше процитированной ошибке. Вот я и спрашиваю, может другой какой какая другая конструкция, встроенная в билдере для этого дела есть? Вопрос то был именно об этом, а вы все в сторону..
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874759
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC SharpVlad F,
То есть там от безысходности?
Когда есть дельфи.ехе и сишная.dll.
Так?
А тут вы зачем "массово применяете"?
Мы что, в загадки играть будем? Имеется большой и разветвленный проект и да, отдельные его части на разных языках. Но не вижу никакой безысходности, а скорее определенную производственную необходимость.
Но и, однако, у вас по существу вопроса что нибудь есть?
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874761
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad FФакты таковы, что данные располагаются с первого и в паскале функция преобразования PAnsiChar()глубо копаете.
Счас посмотрел старые проекты
DirectDraw.pas
......
TDDEnumCallback = function (lpDriverDescription: PAnsiChar....
Но, повторяю, в плюсах это зачем массово применять?
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874762
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad FНо и, однако, у вас по существу вопроса что нибудь есть?нужно знать что с чем стыкуем.
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874765
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выше я привел пример как дельфи стыкуется с winAPI и DirectDraw.
Думаю в плюсах по другому стыкуют.
Это моё имхо.
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874834
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vlad FВот я и спрашиваю, может другой какой какая другая конструкция, встроенная в билдере для
этого дела есть?

В Билдере есть встроенная справка для методов System::AnsiString. При её внимательном
чтении может обнаружиться c_str(), например.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Оператор вхождения во множество
    #39874971
Vlad F
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovVlad FВот я и спрашиваю, может другой какой какая другая конструкция, встроенная в билдере для
этого дела есть?

В Билдере есть встроенная справка для методов System::AnsiString. При её внимательном
чтении может обнаружиться c_str(), например.

Походу это то, что надо, спасибо. А встроенная справка в bcb в XE5 в данном контексте очень кривая, ничего путного не выдает.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Оператор вхождения во множество
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]