one_eight_seven 6 17 мая Опубликовано 17 мая · Жалоба 26 minutes ago, EdgeAligned said: С другой стороны, сеттеры нужны только в том случае, когда действия по установке значения поля имеют некоторые операции типа проверки диапазона значений, прописаны доп. операции, влияющие на члены класса. В противном случае, публичный член и прямая запись. угу. и модификатор final на класс. Я тоже против тривиальных методов, но всё-таки это какой-никакой, но задел на будущее. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
EdgeAligned 85 18 мая Опубликовано 18 мая · Жалоба И посему вопрос - а соппсна зачем писать свою реализацию дин.массива в показанном виде, если в стандартной библиотеке шаблонов STL уже прописаны несколько вариантов дин.массивов? В частности, самый распространенный вариант - vector. Ну или list. У вектора есть особенность - память выделяется сразу на несколько элементов (можно указать, на сколько), а при добавлении элементов сверх этого размера выделяется увеличенный кусок памяти, элементы массива перекопируются в него, а предыдущая память освобождается. Таким образом, получается массив с быстрым произвольным доступом к любому элементу массива, но размер массива может изменяться при добавлении элементов. В противоположность этому, список list - полностью динамическая вещь изменяемого размера, но доступ к элементам только последовательно через итераторы, а это медленнее. Ну и есть еще симбиоз этих массивов - decue - двунаправленный список векторов. Если будете писать самостоятельно, то всё равно реализуете один из этих вариантов. В показанном выше варианте с array.Length = чето_там есть риск отрезать что-то лишнее или допустить утечку памяти. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 236 18 мая Опубликовано 18 мая · Жалоба В 16.05.2024 в 21:08, Arlleex сказал: А вот в "чистом" C++ есть что-то типа этого? __property DynArrInt Length = {read=get_length, write=set_length}; Разве перегрузка операторов присваивания и приведения типа - не оно? Конечно запись их определения будет не такой компактной (может даже дополнительные типы данных придётся создать), но конечный результат вроде должен дать примерно то же самое. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
EdgeAligned 85 18 мая Опубликовано 18 мая · Жалоба Я так понимаю, перегрузка оператора присваивания будет действовать для всего класса. Впрочем, на мой взгляд, ради записи значка = вся эта замута того не стоит. Современные редакторы способны при написании выполнять автоматические подстановки по первым введенным буквам. Касательно диалекта Borland С++, ну а оно нада прям вот? Косяков оригинального С++ и без диалектов хватает, они еще больше запутывают. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 180 19 мая Опубликовано 19 мая · Жалоба В 18.05.2024 в 07:49, jcxz сказал: Разве перегрузка операторов присваивания и приведения типа - не оно? Конечно запись их определения будет не такой компактной (может даже дополнительные типы данных придётся создать), но конечный результат вроде должен дать примерно то же самое. Не думаю, что будет то же самое🙂 Вернее, будет совсем не так. Прикол борланда еще в том, что он не только чтение запись поля пробрасывает в вызов приватной функции, но и чтение. 20 часов назад, EdgeAligned сказал: Касательно диалекта Borland С++, ну а оно нада прям вот? Косяков оригинального С++ и без диалектов хватает, они еще больше запутывают. Мне для всяких тестовых и сервисных утилит при разработке железок возможностей эмбаркадеры в подавляющем большинстве случаев хватает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razrab83 21 19 мая Опубликовано 19 мая · Жалоба 4 минуты назад, Arlleex сказал: он не только чтение 4 минуты назад, Arlleex сказал: но и чтение. ??? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 180 19 мая Опубликовано 19 мая · Жалоба Не только запись, конечно же. Ошибся - поток мыслей опережает скорость клацания по кнопкам. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 236 19 мая Опубликовано 19 мая · Жалоба 57 минут назад, Arlleex сказал: Прикол борланда еще в том, что он не только чтение запись поля пробрасывает в вызов приватной функции, но и чтение. Я же вроде писал: В 18.05.2024 в 07:49, jcxz сказал: Разве перегрузка операторов присваивания и приведения типа - не оно? См.выделенную часть цитаты. Перегруженная операция приведения типа как раз и должна заменить свойство чтения борланда. 21 минуту назад, Arlleex сказал: Ошибся - поток мыслей опережает скорость клацания по кнопкам. Клацаете настолько быстро, что даже вопрос, на который отвечаете, не успеваете полностью прочитать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 180 19 мая Опубликовано 19 мая · Жалоба 4 часа назад, jcxz сказал: Клацаете настолько быстро, что даже вопрос, на который отвечаете, не успеваете полностью прочитать? ага🙂 Ну да, с перегрузкой действительно можно написать примерно то же, что делает борланд) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
juvf 17 20 мая Опубликовано 20 мая · Жалоба В 19.05.2024 в 18:00, Arlleex сказал: Ну да, с перегрузкой действительно можно написать примерно то же, что делает борланд) Ну вот, дожили. Теперь используем всякие финты/костыли/растяжки в пуре с++, чтобы его приблизить к борланду. фэйспалм. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 180 20 мая Опубликовано 20 мая · Жалоба 26 минут назад, juvf сказал: Ну вот, дожили. Теперь используем всякие финты/костыли/растяжки в пуре с++, чтобы его приблизить к борланду. фэйспалм. Используйте. Я не использую. Мне просто было интересно, за каким таким хэ борланд выдумал что-то свое взамен штатно имеющегося. И чтобы взять на заметку, вдруг где-то будет красивше/понятнее, чем вызов функции. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Forger 26 20 мая Опубликовано 20 мая · Жалоба 29 minutes ago, Arlleex said: Мне просто было интересно, за каким таким хэ борланд выдумал что-то свое взамен штатно имеющегося. Видимо для снижения порога входа малограмотных бейсиководов )) 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
esaulenka 7 20 мая Опубликовано 20 мая · Жалоба 1 hour ago, Arlleex said: за каким таким хэ борланд выдумал что-то свое взамен штатно имеющегося. Такая фишка уже миллион лет в си-шарпе есть. И это удобнее, чем заводить какой-то дополнительный тип и переопределять ему операторы. Кто у кого скопировал (особенно с учётом факта, что дельфи и си-шарп создал один и тот же человек), я не знаю. 54 minutes ago, Forger said: порога входа малограмотных бейсиководов Билдер довольно странная штука, имхо. Идея "а давайте сделаем дельфи для тех, кто любит и умеет C++" привела к какой-то странной смеси - тут делаем по-дельфовски, а тут - по-сиплюсплюсному. Но это я билдер готовить не умею, да. Ну и снижение порога входа - не так и плохо. Тут вон постоянно раздаются стоны, что сиплюсплюс очень сложный (Он и мне сложный, я все возможности не только не использую, но даже и не знаю. К сожалению). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
EdgeAligned 85 20 мая Опубликовано 20 мая · Жалоба Затем, что Борланд - это такая маленькая древняя фирмочка, занимавшаяся донакручиванием таких языков как Си/С++, Паскаль, ну и соппсна авторы языка Делфи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 180 20 мая Опубликовано 20 мая · Жалоба 35 минут назад, esaulenka сказал: Билдер довольно странная штука, имхо. Идея "а давайте сделаем дельфи для тех, кто любит и умеет C++" привела к какой-то странной смеси - тут делаем по-дельфовски, а тут - по-сиплюсплюсному. Мне ни разу не приходилось что-то писать в рад студии на делфи)) Только плюсы. И то, плюсы там - одно название. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться