Другие языки программирования и технологии
книги по С++ -файлы с и h (не синтаксис)
здравствуйте, пишу немного на VB, скачал книги по плюсам, но там только синтаксис. с синтаксисом разобраться не проблема, для переключения с VB на плюсы мне нужен сам принцип организации проекта - разделение проекта на файлы, заголовочные h-файлы и срр-файлы и что писать этих файлах, файл ресурсов, объявления функций и всё такое. посоветуйте пожалуйста книги по этой теме. спасибо
Компилятор создаёт объектные файлы из исполняемых файлов, таких как .cpp
Например есть файлы
1.cpp
2.cpp
Получается
1.obj
2.obj
содержимое .h файла как бы вписывается в .cpp файл
#include "file.h"
int main(){ и т. д.
вместо #include "file.h" подставится содержимое этого файла
----------------------------------------
а теперь есть несколько cpp файлов и в каждом написано #include "file.h"
всё будет работать если в "file.h" находятся только объявления, не реализация.
например только объявление функции
void f();
но если сделать реализацию этой функции
void f(){}
то, при компиляции, в 1.cpp вставится void f(){} и в 2.cpp вставится void f(){}.
Возникнет ошибка, так как функция f уже реализована в каком-то файле.
Чтобы избежать такой ошибки, функции реализованные в .h файле должны иметь описатель inline
inline void f(){}
по этой теме особо не написано, нужно статьи читать об использовании visual studio или другой ide
лично я всё это сам на опыте изучал.
Например есть файлы
1.cpp
2.cpp
Получается
1.obj
2.obj
содержимое .h файла как бы вписывается в .cpp файл
#include "file.h"
int main(){ и т. д.
вместо #include "file.h" подставится содержимое этого файла
----------------------------------------
а теперь есть несколько cpp файлов и в каждом написано #include "file.h"
всё будет работать если в "file.h" находятся только объявления, не реализация.
например только объявление функции
void f();
но если сделать реализацию этой функции
void f(){}
то, при компиляции, в 1.cpp вставится void f(){} и в 2.cpp вставится void f(){}.
Возникнет ошибка, так как функция f уже реализована в каком-то файле.
Чтобы избежать такой ошибки, функции реализованные в .h файле должны иметь описатель inline
inline void f(){}
по этой теме особо не написано, нужно статьи читать об использовании visual studio или другой ide
лично я всё это сам на опыте изучал.
Александр Пахомов
спасибо, наконец-то понял!!! ответ на мой вопрос - эту тему надо искать в книгах по IDE, а не по языку
Не знаю, что за книги ты скачал. В книге должен быть не только синтаксис, но и конечно объяснение, что этот синтаксис значит, как это выполняется. Один только синтаксис без разъяснений на одной странице поместится.
Проект чаще всего среда вам соберет, хотя докопаться до деталей, при наличии интереса, стоит.
h(hpp)-файлы - header - заголовочные. В них обычно размещаются все подключения, объявления структур, функций (заголовков), классов.
c(cpp)-файлы - файлы "тела". В них обычно размещается реализация всего того, что объявлено в заголовочных.
файлы ресурсов, если не путаю ничего, содержат ссылки на внешние ресурсы, которые используются в программе (изображения например, возможно даже библиотеки, но насчет них точно не помню).
Ну а книг я не знаю, извиняйте)
h(hpp)-файлы - header - заголовочные. В них обычно размещаются все подключения, объявления структур, функций (заголовков), классов.
c(cpp)-файлы - файлы "тела". В них обычно размещается реализация всего того, что объявлено в заголовочных.
файлы ресурсов, если не путаю ничего, содержат ссылки на внешние ресурсы, которые используются в программе (изображения например, возможно даже библиотеки, но насчет них точно не помню).
Ну а книг я не знаю, извиняйте)
Какие проекты?? Если тока в IDE, но тут от IDE зависит...
А вообще делаешь файлики и делаешь... Как хоч, так и разделяешь.
Кормишь их потом компилятору, он их линкует и выдаёт программу...
ЗЫ #include "file.h"
просто вставит содержимое файла file.h вместо этой надписи перед компиляцией....
А вообще делаешь файлики и делаешь... Как хоч, так и разделяешь.
Кормишь их потом компилятору, он их линкует и выдаёт программу...
ЗЫ #include "file.h"
просто вставит содержимое файла file.h вместо этой надписи перед компиляцией....
Похожие вопросы
- Можно ли объединить разрозненные файлы JPG (например отснятой на цифровик книги) в один файл PDF?
- А какой прога может перевести текст отсканированной книги,которая в файле PDF,в док или тхт?Если можно,сцылу.
- Про синтаксис ассемблера.
- Изучаю си++ обьясните заголовок... #ifndef _PROJECT_H_ #define _PROJECT_H_ Это что создает файлы?
- pascal не выполняет команду read(h);
- Что такое Синтаксис? Напиши сочинение на тему: синтаксис.
- Ассемлер с 0, или С++ скажем так с синтаксиса продолжить.
- Как на PHP получать пути к файлам из массива names в теге input при загрузке некольких файлов?
- C++ Файлы. помогите чем можете . за хороший ответ подарю денюжку
- помогите написать bat-файл.