Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
dimakozyr
158 / 25 / 1
Регистрация: 17.08.2013
Сообщений: 467
#1

Функция или библиотека? - C++

31.10.2013, 10:23. Просмотров 379. Ответов 14
Метки нет (Все метки)

В чем разница, когда говорят написать функцию и написать библиотеку?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.10.2013, 10:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция или библиотека? (C++):

Библиотека string.h, функция strcat - C++
Написал вот такое, но в программе все равно текст не выводит. Должно работать точно также, как и обычная библиотека strcat. char *...

Функция умножения матриц (библиотека какая-нибудь) - C++
Есть функция перемножающая матрицы. Нужно ее переделать, так чтобы использовать какую-нибудь библиотечку с готовой функцией. Кто...

Как работает функция getch() и какая библиотека нужна? - C++
Ребят подскажите пожалуйста в C++ как работает функция getch() и какая библиотека нужна ?

Перегрузка операций: friend-функция или функция-член класса - C++
Здравствуйте, меня интересует вопрос, в чем разница при перегрузке операторов через operator и friend. Вот к примеру такой код. class...

что за функция такая strstr? или это не функция? - C++
void search(sp *list){ sp *prt = list; char f,r; cout<<Rus("введите текст")<<endl; cin>>f; cout<<Rus("введите выходной...

Статическая или динамическая библиотека - C++
Хочу создать свои функции? Какие библиотеки лучше использовать?

14
egor2116
342 / 373 / 42
Регистрация: 20.01.2013
Сообщений: 1,132
31.10.2013, 10:30 #2
В чем разница, когда говорят написать функцию и написать библиотеку?
Видимо библиотека может содержать много функций.
1
dimakozyr
158 / 25 / 1
Регистрация: 17.08.2013
Сообщений: 467
31.10.2013, 10:36  [ТС] #3
То есть это все равно что класс?
0
Trademaster
3 / 3 / 0
Регистрация: 08.10.2013
Сообщений: 21
31.10.2013, 10:44 #4
Цитата Сообщение от dimakozyr Посмотреть сообщение
То есть это все равно что класс?
Да ,что то вроде.
1
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
31.10.2013, 10:48 #5
dimakozyr, Функция это функция. Библиотека это библиотека. Библиотеки создаются в основном для чего-то конкретного и в себе хранят все, что в большинстве случаев может понадобиться. boost - фреймворк, а boost::asio http://www.boost.org/doc/libs/1_54_0/doc/html/boost_asio.html - библиотека.
1
dimakozyr
158 / 25 / 1
Регистрация: 17.08.2013
Сообщений: 467
31.10.2013, 10:51  [ТС] #6
А библиотека должна состоять только из *.h файла?
То есть все методы должны быть определены прямо в нем?
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
31.10.2013, 10:55 #7
dimakozyr, Нет конечно же. В .h файле обычно определено только то, что не может быть определено в другом месте (реализация шаблонов).
1
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
31.10.2013, 11:01 #8
Цитата Сообщение от dimakozyr Посмотреть сообщение
В чем разница, когда говорят написать функцию и написать библиотеку?
Если вопрос поставлен именно так, то под библиотекой, скорее всего, понимают набор классов, функций, констант и т.п. объединенных в один модуль. Который потом можно линковать к программе.
1
newbie666
Заблокирован
31.10.2013, 11:06 #9
попросту говоря, библиотека, это обычно DLL, LIB, SO и тд, которые в себе содержат много функций
1
dimakozyr
158 / 25 / 1
Регистрация: 17.08.2013
Сообщений: 467
31.10.2013, 11:10  [ТС] #10
Цитата Сообщение от Tulosba Посмотреть сообщение
один модуль. Который потом можно линковать к программе.
Цитата Сообщение от newbie666 Посмотреть сообщение
DLL, LIB, SO и тд, которые в себе содержат много функций
Имеется ввиду *.h файл? Или как можно объединять в один модуль?
0
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
31.10.2013, 11:11 #11
dimakozyr, Читаем про DLL и прочее. Но библиотеки бывают не только динамические/статические, header-only библиотеки тоже есть.
1
newbie666
Заблокирован
31.10.2013, 11:15 #12
Если ты создаёшь консольный проект Win32, жмакаешь кнопкой - добавить класс, тебе в проект добавляется h класса и cpp, ну можешь считать это модулем
1
dimakozyr
158 / 25 / 1
Регистрация: 17.08.2013
Сообщений: 467
31.10.2013, 11:16  [ТС] #13
Цитата Сообщение от ForEveR Посмотреть сообщение
header-only библиотеки тоже есть
А, ну мне этого будет достаточно
0
newbie666
Заблокирован
31.10.2013, 11:19 #14
Цитата Сообщение от dimakozyr Посмотреть сообщение
А, ну мне этого будет достаточно
тогда реализуешь функции прямо в H файлах, тоесть пишешь не просто их декларации, а декларации с реализацией, например:
C++
1
2
3
4
5
6
7
8
9
10
11
12
#pragma once
#include <iostream>
class A
{
public:
    A(void){};
    ~A(void){};
    void HeaderOnlyFunc()
    {
        std::cout << "Hello World" << std::endl;
    }
};
1
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
31.10.2013, 11:19 #15
dimakozyr, Отнюдь. header-only библиотеки создаются в основном только при использовании шаблонов, ибо там по другому просто не сделать. В остальных же случаях создаются .cpp файлы, в котором описывается реализации функций, которая впоследствии линкуется к программе (статически/динамически), вследствии чего компиляция происходит довольно быстро, ибо .h файлы небольшие + к тому, нет нужды пересобирать все, при изменении только в .cpp файле.
1
31.10.2013, 11:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.10.2013, 11:19
Привет! Вот еще темы с ответами:

STL, или другая библиотека шаблонов - C++
Где можно жостать инфу (в инете) про STL или другую библиотеку шаблонов? Есди можтте дайте ссылку... Заранее признателен...

На каком языке написана библиотека iostream (Си или C++)? - C++
Добрый вечер. На каком языке написана библиотека iostream? На С или С++? И на каком языке написан сам компилятор Visual Studio?

Библиотека или класс для построения иерархии каталога жесткого диска - C++
Привет всем. Ищу библиотеку, с помощью которой я смогу реализовать выбор для открытия какого-либо файла на компе в моем приложении. Нужна...

Не работает библиотека, что делать? Или где ее скачать для Visual Studio C++ 2013? - C++
У меня библиотека &quot;keygen.h&quot; не открывается:cry:почему:wall:как можно исправить или где скачать файлы? Вот ссылка на ошибку:help: ...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

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