Iron Bug's Collection, коллекция кроссплатформенных кусочков кода на С++ |
Здравствуйте, гость ( Вход | Регистрация )
Iron Bug's Collection, коллекция кроссплатформенных кусочков кода на С++ |
Iron Bug |
5.11.2013, 1:15
Сообщение
#1
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
Вот, решила я всё-таки сделать приличное и публично доступное место для хранения своих полезных наработок:
Iron Bug's Collection Возможно, полезны они будут не только мне, но и кому-то ещё. Цели: кроссплатформа, С++, стандартные бибиотеки, либо с добавлением boost. Кусочки кода, которые можно использовать повторно. Сниппеты (snippets) - как их обозвать по-русски? У меня за много лет накопилось немало кода. Я его сейчас привожу в порядок, в соответствии со стандартом С++11 и буду выкладывать полезные кусочки кода. Сегодня выложила расширенный thread: ibc_threadex Это доработка стандартного std::thread. К обычному потоку добавлен функционал boost::thread: возможность прерывания sleep'ов. Потом доделаю точки прерывания и прочее, чтобы было как в бусте. А то мне у стандартных потоков С++11 сильно не хватало interrupt'а. Требует компилятора, совместимого с С++11 (в частности, variadic templates). Проверен под линюксом, с GCC 4.7 и GCC 4.8.2. Пока не тестировался под Windows (пока что некогда, венда у меня только на работе, а там времени мало), но под MSVS 2013 должен проканать без проблем, ибо написан на чистом С++, использует только стандартные библиотеки. |
|
|
Iron Bug |
5.11.2013, 14:08
Сообщение
#2
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
Собрала под вендой с MinGW-w64 - всё пучком. Проапдейтила конфиги у ibc_threadex.
А MSVS2013 Express у меня не поставилась Говорит, что у меня "венда устаревшая" (7-ка, 64 бит!). Теоретически должна ставиться, на сайте написано, что должна, без всяких дополнительных требований. А по факту - не ставится. Я ради неё даже все апдейты установила, полдня тут перезагружалась... а студия всё равно не ставится. И самое гадкое, что SDK тоже не ставится: говорит, что ему студия нужна с каких пор для набора компилятора и линковщика стала нужна студия - мне непонятно. А ещё инсталлятор требует Explorer 10... в общем, впаривают юзерам всё подряд под соусом бесплатной студии Нет, это не монополия, это такой менеджмент: хочешь-не хочешь, а поставишь Ну, ещё немного поковыряюсь, да и плюну, если надоест. MinGW уже больше фич поддерживает, чем MSVC. |
|
|
ViGOur |
6.11.2013, 9:56
Сообщение
#3
|
Мастер Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: 40 |
Ты у нас еще на главной выложи в разделе исходники, лишняя ссылка на них не помешает, там же можно указать и ссылку на данное обсуждение!
Да, мелкософт он такой, впихивает что только можно. p.s. я про описание собранных тобой полезностей со ссылками на тебя, там на сурсфорж можно и другую главную страницу изобразить если что! |
|
|
Iron Bug |
6.11.2013, 17:47
Сообщение
#4
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
я пока ещё мало полезностей выложила. полезностей много, но они не документированы. а недокументированный код подобен манускриптам Вавилона - нафиг никому не нужен
как будет поболее кода - я всё оформлю более серьёзно. |
|
|
Iron Bug |
8.11.2013, 0:06
Сообщение
#5
|
Профессионал Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12 |
Добавила код ibc_eventex.
Это попытка кроссплатформенной реализации event'ов, симулирующих поведение вендозных event'ов с WaitForSingleObject и WaitForMultipleObjects. Использует только стандартные библиотеки С++11. Пока в стадии проверки и без документации. Я перевожу всё на С++11 и нужно всё тщательно проверять. Сообщение отредактировал Iron Bug - 8.11.2013, 0:06 |
|
|
Текстовая версия | Сейчас: 28.3.2024, 14:17 |