| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Спасибо! Offtop: Жаль, что из-под VS CommunityEdition туда мне не удается влет не добраться
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
Offtop: так прямо в браузере и изучать можно. Там все кликабельно и открывается стандартно либо в той же вкладке, либо в новой. Ну и загляни на вкладку Down_load справа вверху - там можно в виде проекта скачать, правда не полного - без ресурсов.
|
|||
|
||||
Регистрация: 18.11.2019
Сообщений: 1,519
|
Цитата:
Смысл написанного был в том, что в С++ при правильной организации работы следить за утечками памяти практически не придется. По поводу рациональности объявления размерности массива строк заранее (n) - это не правильно. 1. Так как под каждую строку string массива так или иначе память будет выделяться отдельно (при формировании строки, а не инициализации массива), в целом это может не дать существенной экономии (в отличии от массивов с фиксированным размером элементов - например vector <double>). 2. Кроме того, сам класс vector при добавлении элементов память выделяет не по одному элементу, а блоками, что уже дает ускорение. Т.е. выделять 4 элемента при объявлении массива - бессмысленно (вектор, скорее всего, сам больше зарезервирует памяти "про запас", чем под 4 элемента). Если уж выделять память под массив заранее - то уж под массивы на сотни элементов и при помощи метода reserve, а не (n) при объявлении. Метод reserve - выделяет память, но не меняет размер массива. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
создается впечатление, что этот шаблон vector создан вдогонку управляемым языкам - это их идеология: программист управляет данными в явном виде, но не ресурсами) В принципе, логично - сейчас все идет по пути убыстрения/удешевления разработки кода, а не экономии каждого байта - как во времена 286/386 компьютеров с несколькими мб оперативки и тактовыми частотами в десятки МГц.
|
|||
|
||||
Регистрация: 05.08.2008
Сообщений: 823
|
Цитата:
----- добавлено через ~2 мин. ----- В комитете создали группу по линейной алгебре. Так что когда реализую будет полный фарш. Ни фортранов тебе, ни питонов не надо будет |
|||
|
||||
Инженер-конструктор Регистрация: 13.10.2011
Москва
Сообщений: 2,359
|
Цитата:
Например как у меня , и с обычными векторами и с векторами CUDA |
|||
|
||||
Регистрация: 18.11.2019
Сообщений: 1,519
|
Цитата:
Код:
|
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
1. Если известно количество элементов в векторе - что мешает записать в файл в начале вектора количество элементов?
2. Если заранее неизвестно - запомнить позицию в файловом потоке, записать "пустышку" - нулевое количество, после завершения записи вектора с подсчетом количества во вспомогательной переменной записать по ранее сохраненной позиции реальное число элементов. |
|||
|
||||
Регистрация: 18.11.2019
Сообщений: 1,519
|
Цитата:
Если код тормозит совсем уж безбожно - тогда надо думать начинать. Но все равно обычно тормозит не из-за особенности реализации "сишных" методов (типа разового выделения памяти под массивы), а из-за того, что свой алгоритм коряво построен, сортировки не оптимальны и т.д. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
Цитата:
причем тут на любителя - просто голову включать в процессе написания кода, а не когда уже какие затраты времени - записать число в файл перед содержимым самого вектора, а при считывании задать сразу нужную емкость вектора? |
|||
|
||||
Регистрация: 18.11.2019
Сообщений: 1,519
|
Цитата:
Когда я это делал в Delphi - приходилось по два раза перечитывать расчетную схему (для определения размера массива и для заполнения), так как в Delphi были чудовищные тормоза с выделением памяти. |
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
а можно от лени вообще наделать наследуемых классов от того же List<T> типа:
Код:
Код:
----- добавлено через ~4 мин. ----- в дельфях тоже свой менеджер памяти, насколько помню - откуда там дикие тормоза? Если, конечно миллионами мелких кусочков не оперировать одновременно, что сам менеджер памяти начинает томозить... |
|||
|
||||
Регистрация: 18.11.2019
Сообщений: 1,519
|
Цитата:
Не разбирался. Помню, что проблемы с памятью были. Перешел на с++ - исчезли. |
|||
|
||||
Уот вы тут теесу мощно помогли..
Зато писюнами друг с другом знатно померились Крассучеги.. помогли теесу знатно))
__________________
Мастерская СПДС |
||||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
а ТС, судя по активности вхождения на форум и отсутствию новых сообщений - почитал ветку несколько дней, понял, что за 10 лет никакой новой халявы не появилось и подуныл)
----- добавлено через ~27 мин. ----- Вообще то смысл ООП как раз замкнуть (инкапсулировать) часть общей логики приложения внутри соответствующего класса - отладил и забыл) А наследовать объекты друг от друга кучу раз - это вообще логике не поддается, оргия уже какая то) Недаром в .Net сразу запретили множественное наследование. |
|||
|
||||
Регистрация: 18.11.2019
Сообщений: 1,519
|
Цитата:
|
|||
|
||||
Регистрация: 10.08.2013
Сообщений: 11,041
|
Цитата:
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Offtop: Типа MVVM, DI etc?
Мне все же кажется, что тут радостно запугали и запутали ТС. Мое мнение - фиолетово на каком языке писать. Главное - начать, а там как карта ляжет.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
AutoCAD Чего хотите изменить в интерфейсе? | Серёга - Bilder | AutoCAD | 142 | 11.09.2015 16:18 |
С чего начинать программирование в Lisp'е? | XoRys | Поиск литературы, чертежей, моделей и прочих материалов | 13 | 27.02.2013 23:26 |
Информация по идентификационным кодам программ в сетевых лицензиях Autodesk | KSI | AutoCAD | 1 | 14.09.2009 15:59 |
Программирование в ЛИСП: с чего начинать | Vavan Metallist | LISP | 14 | 24.06.2008 22:42 |
С чего начинать | Диана Проценко | Прочее. Программное обеспечение | 16 | 19.05.2008 15:39 |