Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.192] |
|
|
Правила раздела:
| Страницы: (495) « Первая ... 385 386 [387] 388 389 ... 494 495 ( Перейти к последнему сообщению ) |
Delphi vs C++ vs C#
, ну и Java немножко, где-то ближе к старшему байту номеров страниц
|
Сообщ.
#5791
,
|
|
|
|
А что там насчёт устройства std::string ? Хранит или не хранит ? И если не хранит, то присоединяюсь к jack128 - откуда берёт ?
|
|
Сообщ.
#5792
,
|
|
|
|
Что именно смешно? Не видели GC для C/C++? Добавлено Цитата IL_Agent @ А что там насчёт устройства std::string ? Хранит или не хранит ? И если не хранит, то присоединяюсь к jack128 - откуда берёт ? Уже ведь пояснили: это не специфицировано. Память, на которую мы получили указатель, принадлежит std::string. Всё, точка |
|
Сообщ.
#5793
,
|
|
|
|
Цитата IL_Agent @ А что там насчёт устройства std::string ? Хранит или не хранит ? И если не хранит, то присоединяюсь к jack128 - откуда берёт ? ![]() Неужели в C# и в Delphi все настолько плохо с инкапсуляцией, что вам так нравится копаться во внутренностях? |
|
Сообщ.
#5794
,
|
|
|
|
Просто замечательно. Ну а как в каком-ниьудь gcc, например, реализовано ? |
|
Сообщ.
#5795
,
|
|
|
|
Цитата IL_Agent @ Ну а как в каком-ниьудь gcc, например, реализовано ? Можешь посмотреть. Добавлено IL_Agent, а что и как хранит в себе System.String? |
|
Сообщ.
#5796
,
|
|
|
|
Цитата IL_Agent @ Просто замечательно. Да, весьма удобно, никаких минусов. Добавлено Цитата D_KEY @ IL_Agent, а что и как хранит в себе System.String? Ты подумал, что ты спросил? |
|
Сообщ.
#5797
,
|
|
|
|
Кстати, как мне в C# работать с null-terminated строками?
|
|
Сообщ.
#5798
,
|
|
|
|
Это всё очень весело. Но выходит, что метод стандартного std::string c_str() по-разному работает на разных стандартных компиляторах ? Вот это СтандартЪ, 5 баллов
|
|
Сообщ.
#5799
,
|
|
|
|
Цитата IL_Agent @ Это всё очень весело. Но выходит, что метод стандартного std::string c_str() по-разному работает на разных стандартных компиляторах ? Вот это СтандартЪ, 5 баллов ![]() Он одинаково выполняет свой контракт. Это не достаточно? |
|
Сообщ.
#5800
,
|
|
|
|
Цитата D_KEY @ Он одинаково выполняет свой контракт Что, собственно, и есть "одинаково работает". |
|
Сообщ.
#5801
,
|
|
|
|
Цитата D_KEY @ Он одинаково выполняет свой контракт. Это не достаточно? Т.е. знать, выделяется ли память и нужно ли её ручками подчищать - необязательно ? |
|
Сообщ.
#5802
,
|
|
|
|
Цитата IL_Agent @ Её не нужно очищать. Инфа 100% Т.е. знать, выделяется ли память и нужно ли её ручками подчищать - необязательно ? |
|
Сообщ.
#5803
,
|
|
|
|
Цитата IL_Agent @ Цитата D_KEY @ Он одинаково выполняет свой контракт. Это не достаточно? Т.е. знать, выделяется ли память и нужно ли её ручками подчищать - необязательно ? Ручками ее точно подчищать не надо. Это забота std::string. |
|
Сообщ.
#5804
,
|
|
|
|
Цитата IL_Agent @ Т.е. знать, выделяется ли память и нужно ли её ручками подчищать - необязательно ? Ещё раз, память, которая вернула c_str, принадлежит std::string по Стандарту. Не специфицировано то, как именно std::string управляет этой памятью. Но знать это и не нужно |
|
Сообщ.
#5805
,
|
|
|
|
Цитата D_KEY @ Ручками ее точно подчищать не надо. Это забота std::string. А, ну я про это и спрашиваю. Добавлено Цитата D_KEY @ Кстати, как мне в C# работать с null-terminated строками? Например, http://msdn.microsoft.com/ru-ru/library/7b620dhe.aspx |