Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
RazrFalcon |
27.3.2011, 6:22
Сообщение
#1
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
.cpp
.hЭто правильный способ или нет? А то я давно так не делал, но вроде работает. |
|
|
|
|
Алексей1153 |
27.3.2011, 15:42
Сообщение
#2
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2946 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34
|
так правильнее
чтобы заголовочник можно было использовать ещё в другом cpp А ещё более правильно - класс сделать и туда статическую функцию сунуть |
|
|
|
|
RazrFalcon |
27.3.2011, 19:14
Сообщение
#3
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
Хм...
А #include <main.h> я забыл прописать, а оно сработало, как так? >>чтобы заголовочник можно было использовать ещё в другом cpp в другом - это как? >>А ещё более правильно - класс сделать и туда статическую функцию сунуть Класс с одной функцией? типа:
|
|
|
|
|
Litkevich Yuriy |
27.3.2011, 19:51
Сообщение
#4
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(RazrFalcon @ 27.3.2011, 22:14) Link А #include <main.h> я забыл прописать, а оно сработало, как так? а в коде нет ничего, что было бы нужно из main.hЦитата(RazrFalcon @ 27.3.2011, 22:14) Link в другом - это как? в ещё одном cpp-файле, который используется в проекте. Реальный проект ведь состоит из множества h/cpp- файловЦитата(Алексей1153 @ 27.3.2011, 18:42) Link А ещё более правильно - класс сделать и туда статическую функцию сунуть а это может быть излишним, это от конкретного проекта зависит
|
|
|
|
|
RazrFalcon |
27.3.2011, 19:57
Сообщение
#5
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
Цитата(Litkevich Yuriy @ 27.3.2011, 19:51) Link Цитата(RazrFalcon @ 27.3.2011, 22:14) Link в другом - это как? в ещё одном cpp-файле, который используется в проекте. Реальный проект ведь состоит из множества h/cpp- файловЭто я понял, разве не достаточно прописать нужный хедер в include? Обязательно ли писать extern перед функцией? PS: ясное дело что не из одного cpp проекты состоят Сообщение отредактировал RazrFalcon - 27.3.2011, 19:58 |
|
|
|
|
Iron Bug |
27.3.2011, 21:44
Сообщение
#6
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 1611 Регистрация: 6.2.2009 Из: Yekaterinburg Пользователь №: 533 Спасибо сказали: 219 раз(а) Репутация: 12
|
Цитата(Алексей1153 @ 27.3.2011, 18:42) Link А ещё более правильно - класс сделать и туда статическую функцию сунуть а вот это как сказать... если планируется использование в качестве библиотеки и т.п., то тут есть минус в том, что при экспорте будет геморрой и потенциальная несовместимость между компиляторами. иногда логичнее оставить функцию снаружи. ну, можно ещё объявить пространство имён, чтобы не засорять глобальное пространство. Цитата(RazrFalcon @ 27.3.2011, 22:57) Link Обязательно ли писать extern перед функцией? extern означает, что функция в другом модуле. обычно компилятор сам видит линки внутри проекта. но если это подключение статической библиотеки или взаимодействие с кодом на С, то это обязательно. |
|
|
|
|
Алексей1153 |
28.3.2011, 7:52
Сообщение
#7
|
![]() фрилансер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 2946 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34
|
Цитата(Iron Bug @ 27.3.2011, 23:44) Link ну, можно ещё объявить пространство имён, чтобы не засорять глобальное пространство. ну да, можно и пространством обойтись. Тоже не люблю замусоривание ) |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 26.12.2025, 16:53 |