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

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

Войти
Регистрация
Восстановить пароль
 
hVoltage
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 28
#1

Несколько неясностей в C++ - C++

06.07.2013, 22:21. Просмотров 330. Ответов 2
Метки нет (Все метки)

Здравствуйте, в процессе изучения C++ возникли вопросы.
1. Объявления и определения функции. С терминологией и сутью проблем не было. Но никак не пойму, когда используется объявление? Когда сама функция находится в одном файле, а использовать ее нужно в другом?
2. Inline функции. В книге ("C++ Вводный курс" Липпман) сказано "В отличие от других функций, определения встраиваемых функций должны находиться в файлах заголовках". Не нравится именно слово "должны". Неточность перевода или на самом деле так? Может быть все таки подразумевалось "рекомендуется". И кстати, если это так, то почему это так?)
3. Вот, допустим, есть у меня класс, хранящийся в файле (например, "abc.h"). В нем объявлена функция-член. Определена же эта функция в другом файле(например, "abc.cpp"). Если в файл программы нужно подключить этот класс, то как я понял нужно еще и подключать файл, в котором определена эта функция. Подключать файл с функцией(не классом) тоже директивой include?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.07.2013, 22:21     Несколько неясностей в C++
Посмотрите здесь:

Парочка примитивных неясностей о массивах и C-strings - C++
Когда я пишу: char * arr = new char; Выделяется память размером 7 байт под массив с элементами arr ... arr и обращение к arr приведет к...

Разрешение неясностей - JavaScript
Есть вот такой файл xul. <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet href="chrome://global/skin" type="text/css"?> ...

Пару неясностей по image в wpf - C# WPF
1) Как сделать так, чтобы при наведении мышки на картинку появлялась другая картинка? 2) Как сделать чтобы при нажатии на картинку...

Тетрис разбор неясностей - C++
Всем доброго времени суток нужна помощь в комментировании желательно как можно подробнее Программы в Visual Studio 2008 всё работает нужны...

Зависимость между двумя ячейками: несколько водителей и несколЬко автомобилей - MS Access
Подскажите, пожалуйста, как сделать зависимость между двумя ячейками? Например, когда выбираю какую-либо фамилию в ячейке...

Как прикрепить несколько картинок на несколько людей в списке БД - Delphi БД
У меня есть готовая БД, Нужно сделать чтобы при выборе строки в DBGrid, выходила картинка в DBImage. и так на несколько людей в списке. что...

.NET 4.x Сделать так, чтобы можно было добавить несколько одинаковых блюд, не кликая несколько раз - C#
Ребята, подскажите! На форме2 надо сделать так, чтобы можно было добавить несколько одинаковых блюд, не кликая несколько раз, а чтобы в...

А если учить сразу несколько несколько ПЯ? - Обо всем!
Народ всем привет плиз за тему не убивайте ок:-D У меня вопрос я хочу C++,html,css,javascript вместе учить каши не будет в голове? И за...

Как записывать несколько одномерных массивов, и несколько двумерных массивов в один единственный текстовый файл - C#
Как записывать несколько одномерных массивов, и несколько двумерных массивов в один единственный текстовый файл? Что-то не видел других...

Ноутбук полностью зависает на несколько секунд с периодичностью тоже в несколько секунд - Ремонт ноутбуков
После 1-2 часов работы начинает подвисать ноутбук. Полное зависание на несколько секунд. Проверил температуру, пытался связать это с...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13063 / 7326 / 817
Регистрация: 27.09.2012
Сообщений: 18,085
Записей в блоге: 3
Завершенные тесты: 1
06.07.2013, 22:30     Несколько неясностей в C++ #2
1) Функция должна быть объявлена перед перед ее использованием, чтобы компилятор мог проверить соответствие вызова объявлению
определение же может находиться хоть в этом же модуле, хоть в другом.
2) Для того, чтобы функцию можно было встроить необходим ее исходный код, соотвественно, если код скомпилирован в другом модуле, то объявления функции будет не достаточно для встраивания.
3) Подключайте include'ом заголовок, в котором объявлена функция, а модуль с определением указывайте при компиляции или просто добавьте его в проект, если используете IDE. Далее это работа линкера
hVoltage
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 28
06.07.2013, 22:33  [ТС]     Несколько неясностей в C++ #3
Спасибо, все так, как и думал
Ответ Создать тему
Опции темы

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