Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
polimorf96
9 / 9 / 0
Регистрация: 02.08.2010
Сообщений: 270
#1

Почему включение сторонних библиотек не рекомендуется? - C++

11.11.2010, 20:12. Просмотров 983. Ответов 12
Метки нет (Все метки)

Почему нежелательно включать в программу под linux ну например ncurses.h (сторонняя популярная библиотека)? Почему нужно включать только библиотеки, идущие в состав компилятора?
Чем мне "угрожают" сторонние библиотеки? Зачем их тогда писать?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.11.2010, 20:12     Почему включение сторонних библиотек не рекомендуется?
Посмотрите здесь:

Использование сторонних библиотек - C++
Всем салют! Я новичок на этом форуме, а также в языке Си++. У меня возникли вопросы. Дело в том, что до Си++ я кодил на PHP, причем...

Установка сторонних библиотек - C++
Здравствуйте. Мне нужна библиотека по нейросетям. В интернете нашел вот такую библиотеку. http://www.nongnu.org/libann/doc/installing.html ...

Подключение сторонних библиотек - C++
Я пишу в Visual Studio и в некоторый проектах использую SDL. У меня есть папка с библиотеками и инклудами SDL, я ее подключаю в...

Графика без сторонних библиотек - C++
Интересует следующий вопрос: можно ли без сторонних библиотек, чистым С++ вывести пиксели разных цветов или их массивы? К тому же очень...

Скрытие warning сторонних статических библиотек в g++ - C++
Здравствуйте! Я статически подключаю библиотеку (liblibrary.a), и тут компилятор gnu g++ выдает мне предупреждение на одно из мест в...

Почему не рекомендуется использовать препроцессор? - C++
Я сейчас активно пользуюсь #define для упрощения понимания кода. Например, у меня сложная система классов, что бы получить одну...

Отключение предупреждений при подключении сторонних библиотек - C++
Доброго времени суток! возник вопрос - чисто теоретический - допустим, что я подключил библиотеку, криво-написанную, но работающую,...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
11.11.2010, 20:33     Почему включение сторонних библиотек не рекомендуется? #2
polimorf96, Отсутствием совместимости. Если не скачана библиотека на компьютер - не будет работать. Поэтому лучше пользоваться стандартными либами. Но это относительное лучше. Ведь бустом пользуються многие.
polimorf96
9 / 9 / 0
Регистрация: 02.08.2010
Сообщений: 270
11.11.2010, 20:49  [ТС]     Почему включение сторонних библиотек не рекомендуется? #3
Цитата Сообщение от ForEveR Посмотреть сообщение
polimorf96, Отсутствием совместимости. Если не скачана библиотека на компьютер - не будет работать. Поэтому лучше пользоваться стандартными либами. Но это относительное лучше. Ведь бустом пользуються многие.
Если не скачана библиотека на компьютер - не будет работать
нет ну если не скачена то понятное дело что работать не будет но а если я скачаю заголовочный файл и библиотеку ну например ncurses.h на комп и пропишу #include <ncurses.h> -где тут таится зло?
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
11.11.2010, 21:03     Почему включение сторонних библиотек не рекомендуется? #4
polimorf96, Исключительно в неследовании букве стандарта.
polimorf96
9 / 9 / 0
Регистрация: 02.08.2010
Сообщений: 270
11.11.2010, 21:09  [ТС]     Почему включение сторонних библиотек не рекомендуется? #5
Цитата Сообщение от ForEveR Посмотреть сообщение
polimorf96, Исключительно в неследовании букве стандарта.
если честно не совсем понял что за буква стандарта? Я язык то изучаю совсем недавно и про букву стандарта ничего не слышал
ForEveR
В астрале
Эксперт С++
7970 / 4732 / 320
Регистрация: 24.06.2010
Сообщений: 10,541
Завершенные тесты: 3
11.11.2010, 21:11     Почему включение сторонних библиотек не рекомендуется? #6
polimorf96, Стандарт С/С++. Поищите в инете. Собственно компиляторы поддерживают стандарт и в основном добавляют разные свои фишки.
odip
Эксперт С++
7157 / 3297 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
12.11.2010, 07:08     Почему включение сторонних библиотек не рекомендуется? #7
Смысл этого в отсутствии портабельности программы
Если ты пишешь программу только под свой компьютер - можешь использовать все библиотеки что найдешь на нем

Зло в том что если ты принесешь свою программу на другой компьтер, где нет ncurses - то она не будет компилироваться.
А если принесешь в Windows - то там вообще ncurses не бывает насколько я знаю

Добавлено через 1 минуту
На самом деле любая более-менее сложная программа использует тонны библиотек, не входящих в стандартные C/C++.
Это нормально - нормальные программисты не хотят изобретать велосипед
polimorf96
9 / 9 / 0
Регистрация: 02.08.2010
Сообщений: 270
12.11.2010, 14:57  [ТС]     Почему включение сторонних библиотек не рекомендуется? #8
Цитата Сообщение от odip Посмотреть сообщение
Смысл этого в отсутствии портабельности программы
Если ты пишешь программу только под свой компьютер - можешь использовать все библиотеки что найдешь на нем

Зло в том что если ты принесешь свою программу на другой компьтер, где нет ncurses - то она не будет компилироваться.
А если принесешь в Windows - то там вообще ncurses не бывает насколько я знаю

Добавлено через 1 минуту
На самом деле любая более-менее сложная программа использует тонны библиотек, не входящих в стандартные C/C++.
Это нормально - нормальные программисты не хотят изобретать велосипед
стоп-так кажется команда #include <name.h> при компилировании включает в программу всю библиотеку как-бы "копируя " код из name.h ? Или я что-то путаю?
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
12.11.2010, 15:35     Почему включение сторонних библиотек не рекомендуется? #9
А по-вашему name.h - это библиотека? Откройте файлик name.h и гляньте его содержимое, а затем сделайте вывод, может ли он быть библиотекой.
polimorf96
9 / 9 / 0
Регистрация: 02.08.2010
Сообщений: 270
12.11.2010, 15:57  [ТС]     Почему включение сторонних библиотек не рекомендуется? #10
Цитата Сообщение от silent_1991 Посмотреть сообщение
А по-вашему name.h - это библиотека? Откройте файлик name.h и гляньте его содержимое, а затем сделайте вывод, может ли он быть библиотекой.
а ну да name.h -заголовочный файл..... тупонул немного...
easybudda
Эксперт С++
9460 / 5473 / 927
Регистрация: 25.07.2009
Сообщений: 10,495
12.11.2010, 16:12     Почему включение сторонних библиотек не рекомендуется? #11
Цитата Сообщение от silent_1991 Посмотреть сообщение
Откройте файлик name.h и гляньте его содержимое
А у меня в моих ущербных биэсдях/макинтошах такого и нету... там хоть про что пишут-то?

Цитата Сообщение от odip Посмотреть сообщение
нормальные программисты не хотят изобретать велосипед
Нормальные герои всегда идут в обход!
(с)

Но в принципе полностью согласен с odip - кроме отсутствия переносимости ничем использование сторонних библиотек не грозит. Так, что, если пишите под UNIX/Linux, используйте смело ncurses и ни о чём плохом не думайте! В конце-концов программа, активно использующая прибамбасы из windows.h ни на каких линуксах/макинтошах/салярисах и прочих хэпэ-уиксах ни за какие коврижки не скомпилируется - это же не значит, что в программах, рассчитанных исключительно под винду нельзя windows.h использовать. Куда ж там без него?!
silent_1991
Эксперт С++
4960 / 3036 / 149
Регистрация: 11.11.2009
Сообщений: 7,027
Завершенные тесты: 1
12.11.2010, 16:15     Почему включение сторонних библиотек не рекомендуется? #12
easybudda, ну, я предполагал, что каждый вместо name подставит свой любимый хидер)))
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.11.2010, 18:36     Почему включение сторонних библиотек не рекомендуется?
Еще ссылки по теме:

Как узнать частоту звука без сторонних библиотек - C++
кто нибудь знает как в работать со звуком без сторонних библиотек? мне нужно чтобы во время проигрывания звука можно было узнать его...

Работа нескольких сторонних библиотек под одним интерфейсом - C++
Здравствуйте! Хочу реализовать библиотеку, которая будет предоставлять интерфейс к некоему абстрактному действию (e. g. расшифровка,...

Пояснить, почему в примере не рекомендуется использовать закрытое наследование - C++
Всем доброго времени суток ! Помогите пожалуйста разобраться с этой фразой на примере . То что я знаю про закрытое наследование ,...

Как на с++(юникс) отправить http post запрос без сторонних библиотек - C++
Ответ сервера не важен, главное - послать пост-запрос. boost, libcurl и прочее использовать нельзя. Подскажите, как это проще всего...

Как определять какие ключи компиляции необходимы при использовании сторонних библиотек? - C++
Захотелось мне скомпилировать программу, использующую Zlib, но компилятор ругается undefined reference такая-то функция. Значит ему надо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Evg
Эксперт CАвтор FAQ
17534 / 5772 / 369
Регистрация: 30.03.2009
Сообщений: 15,882
Записей в блоге: 26
12.11.2010, 18:36     Почему включение сторонних библиотек не рекомендуется? #13
Цитата Сообщение от easybudda Посмотреть сообщение
Так, что, если пишите под UNIX/Linux, используйте смело ncurses и ни о чём плохом не думайте!
+1. Если предполагается ограничить работу программы только в linux'е - используй ncrurses и не заморачивайся. Если ещё нет опыта по написанию переносимых кодов - то тем более используй и не заморачивайся. Потому что когда приспичит запутить программу под другую ОС и когда ты всё-таки это сможешь сделать, то ты намного лучше будешь понимать, как пишутся переносимые программы, чем прочтя сотню книг и тысячу статей
Yandex
Объявления
12.11.2010, 18:36     Почему включение сторонних библиотек не рекомендуется?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru