|
-508 / 32 / 0
Регистрация: 22.09.2015
Сообщений: 1,232
|
|
Пишу свою библиотеку C++04.04.2023, 20:22. Показов 9100. Ответов 122
Метки нет (Все метки)
Приветствую!
Кто хочет поучится программированию на C++ за одно написать нужные классы и функции для будущих своих разработок, предлагаю присоединиться к разработке своей библиотеки C++. Зачем я это делаю? Кто-то скажет есть же уже готовые библиотеки, зачем изобретать велосипед и тд. Во-первых в существующих много лишнего чем вы никогда не воспользуетесь и нужно их изучать подстраиваться под их синтаксисы и тд. проблемы при отладке т.к. не знаете как что работает и тп. Во-вторых в своих знаешь, что и как работает, при необходимости можно доработать, написаны только самые основные нужные функции и классы с удобным для себя синтаксисом. В-третьих при создании своей библиотеки вы изучаете нативные функции и возможности самого языка программирования и на примерах пишите по своему, тестируете и оттачиваете свои мастерство и знания, которые в последствии вам помогут при создании своих будущих проектов. В перспективе я планирую написать с помощью своей библиотеки базу данных, язык программирования, веб-сервер. Ещё есть мысль с применением графической библиотеки wxWidgets(возможно другой) написать заголовочный файл для быстрого создания окон, элементов окна и др. https://github.com/arbnet/CppLibrary
1
|
|
| 04.04.2023, 20:22 | |
|
Ответы с готовыми решениями:
122
Создать свою библиотеку в С++ Создать свою библиотеку Разработать свою библиотеку |
|
фрилансер
6440 / 5634 / 1127
Регистрация: 11.10.2019
Сообщений: 14,978
|
||||||||||||
| 09.05.2023, 18:49 | ||||||||||||
[] , то оператор delete тоже должен быть с нимиДобавлено через 1 минуту то есть
0
|
||||||||||||
|
-508 / 32 / 0
Регистрация: 22.09.2015
Сообщений: 1,232
|
||||||||||||
| 09.05.2023, 19:03 [ТС] | ||||||||||||
|
Хочу сделать так чтобы в ANY можно было присвоить "константную строку". Присвоение работает. Но когда я присваиваю другое значение, то указатель на прежнее значение должно удалится, но возникает ошибка. Перепробовал уже по всякому. В методе Clear() switch -> case 14:
0
|
||||||||||||
|
фрилансер
6440 / 5634 / 1127
Регистрация: 11.10.2019
Сообщений: 14,978
|
|||
| 09.05.2023, 19:10 | |||
|
pgb, указатель, полученный от литерала, нельзя удалять. Просто замени на новый
Добавлено через 1 минуту
0
|
|||
|
-508 / 32 / 0
Регистрация: 22.09.2015
Сообщений: 1,232
|
|||||||||||||
| 09.05.2023, 20:15 [ТС] | |||||||||||||
Если делаю ссылкой
Добавлено через 1 минуту Добавлено через 41 минуту Проблему решил, двигаюсь дальше.
0
|
|||||||||||||
|
-508 / 32 / 0
Регистрация: 22.09.2015
Сообщений: 1,232
|
||||||
| 10.05.2023, 20:31 [ТС] | ||||||
|
Непонятная ошибка. Тестирую класс ANY в котором добавлен operator++. Объекту ANY присваиваем значение объекта DATETIME, затем увеличиваем через ++. Возникает ошибка удаления ссылки на объект DATETIME в деструкторе.
Я так понимаю создаётся несколько объектов, один удаляется нормально, а второй уже удалить не может. Пока не могу отловить конкретную причину. Тестовый код
С инкрементом DATETIME разобрался. Сделал ещё описание типов.
0
|
||||||
|
-508 / 32 / 0
Регистрация: 22.09.2015
Сообщений: 1,232
|
||||||
| 11.05.2023, 19:09 [ТС] | ||||||
|
Добрался до ассоциативного массива _array.hpp Associative
Тест
0
|
||||||
| 12.05.2023, 08:37 | |
|
pgb, вы вроде считаете себя опытным, а вопросы про ошибки ставите как чайник.
В чем выражается ошибка? Что в консоли? PS ваша либа без правок не будет компилироваться у всех. _itoa в стандартных плюсах не определена. Почему не std::to_string?
0
|
|
|
фрилансер
6440 / 5634 / 1127
Регистрация: 11.10.2019
Сообщений: 14,978
|
|
| 12.05.2023, 08:41 | |
|
0
|
|
|
-508 / 32 / 0
Регистрация: 22.09.2015
Сообщений: 1,232
|
||||
| 12.05.2023, 09:00 [ТС] | ||||
|
К тому же в самой библиотеке на глобальном уровне я using namespace std; не использую только в пространстве имён i интерфейса, пока его не доделал, поэтому в тестовых примерах использую.
0
|
||||
|
фрилансер
6440 / 5634 / 1127
Регистрация: 11.10.2019
Сообщений: 14,978
|
||
| 12.05.2023, 09:02 | ||
|
0
|
||
| 12.05.2023, 09:07 | ||||
Смешно же. Тогда вообще не пользуйтесь этим ЯП. Просто на пустом месте вы теряете кроссплатформенность. Т.е. если "нативно" то как раз _itoa - нарушает это ваше правило.
0
|
||||
|
-508 / 32 / 0
Регистрация: 22.09.2015
Сообщений: 1,232
|
|||
| 12.05.2023, 09:18 [ТС] | |||
|
Добавлено через 4 минуты
0
|
|||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
|||
| 12.05.2023, 09:25 | |||
Добавлено через 58 секунд
0
|
|||
|
фрилансер
6440 / 5634 / 1127
Регистрация: 11.10.2019
Сообщений: 14,978
|
||
| 12.05.2023, 09:28 | ||
<charconv>std::from_chars std::to_chars не очень удобные, как по мне, но заявлены очень быстрыми
0
|
||
|
-508 / 32 / 0
Регистрация: 22.09.2015
Сообщений: 1,232
|
|||
| 12.05.2023, 09:34 [ТС] | |||
|
Добавлено через 4 минуты
0
|
|||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
||||
| 12.05.2023, 09:36 | ||||
|
Не по теме:
Вообще С++ на мой взгляд последние несколько лет внезапно развивается в очень здравом направлении; если ограничивать себя в подмножестве используемых конструкций - то практически бейсик (в хорошем смысле) получится, только быстрый. (бейсик это так, по старой памяти; что там сейчас бизнес-программист фрейндли?). Добавлено через 1 минуту
0
|
||||
|
фрилансер
6440 / 5634 / 1127
Регистрация: 11.10.2019
Сообщений: 14,978
|
|
| 12.05.2023, 09:44 | |
|
KSergey9, возможно, пытаются порог вхождения снизить. Но скорее - просто стараются не сломать старое, добавляя более удобное новое
![]() А я и std::to_string не стесняюсь пользоваться. И std::stringstream. А упомянуте две функции - это для случаев, где скорость и память критически важны
0
|
|
| 12.05.2023, 10:06 | ||||
|
Добавлено через 15 минут Вы пишите не в болге, где рассчитано на то что автор просто делится своими переживаниями, а на форуме, где автор обычно ищет помощь в решении своей проблемы.
0
|
||||
|
631 / 526 / 104
Регистрация: 05.08.2022
Сообщений: 2,810
|
|||||||
| 12.05.2023, 10:30 | |||||||
|
Банально хотят сделать язык приспособленным к существенно большему кругу задач. Гонять байтики изначально было очень клёво на Си (и плюсах). Но когда ты пытаешься использовать в клиентских бизнес-задачах, то внезапно выясняется, что библиотека неимоверно скудна на повседневно нужные там операции. Хуже того, ты ты всё равно вынужден постоянно очень внимательно следить за байтиками, хотя задача вообще про друое. По-началу стали втаскивать функциональщину, красноглазики писали кипятком. Но, по счастью, в комитете, очевидно, появились люди, которые быстро смекнули, что красноглазики они прикольные конечно, но только в своей незаметно узкой прослойке и, главное, это история вообще не про деньги. И тогда в 14 и 17 стандарты стали подвозить много именно бизнес-фич, и к 20 это только набирает обороты, что меня очень радует. Разумеется, для красноглазиков тоже очень много чего подвозят, без них в общем-то тоже никак нам не жить на самом деле, симбиоз это хорошо. ![]() PS Особенно меня умиляет история длинною в несколько десятилетий(!!), когда наконец-то в контейнеры подвезли contains() И длина этой истории - это очень яркий признак засилия красноглазиков. Я лично не раз с такими общался лично на протяжении буквально не одного десятилетия (ну ок, двух), которые совершенно искренне не могли понять в чем проблема вот такого кода, которого было весьма существенное количество
0
|
|||||||
|
фрилансер
6440 / 5634 / 1127
Регистрация: 11.10.2019
Сообщений: 14,978
|
||
| 12.05.2023, 11:00 | ||
Сам так часто поступаю
0
|
||
| 12.05.2023, 11:00 | |
|
Помогаю со студенческими работами здесь
60
Как создать свою библиотеку
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга,
Ты же видел моря и метели.
Как сменялись короны и стяги,
Как эпохи стрелою летели.
- Этот мир — это крылья и горы,
Снег и пламя, любовь и тревоги,
И бескрайние. . .
|