Необходимо создать минимальный проект-образец в DEV C++

kravam

Минимальный, ну, чтобы там 2 файла, что ли было. main.cpp и functsia.cpp, Бог даст- получится- возьму его за образец...Друзья! Ну, то есть я, конечно, кодил раньше небольшие проекты и из 10-ти даже файлов, но вручную что ли, это не были проекты в понимании DEV C++. Была папка, где я создавал файл fail.сpp, писал там функции, если их оказывалось много, создавал в этой же папке другие файлы *сpp, где эти функции прописывал, потом создавал файлы ресурсов в этой же папке, там прописывал, допустим, массивы данных, потом компилировал fail.cpp ОТДЕЛЬНЫМ ФАЙЛОМ (позаботясь прежде онеобходимых объявлениях), получал fail.exe и всё на этом. Теперь вот решил "по-взрослому" создавать проекты средствами DEV C++. Сразу куча вопросов. 1) Неужели удобно после успешной компиляции в пректе proekt вместо файла main.exe иметь файл proekt.exe? 2) Почему создав папку в обзоре проекте... в папке проекта её нет? 3) И так далее...Наверное, это всё дло привычки. Привыкну- не привыкну, это второй вопрос уже. А вот с этим как разобраться?Имеем проект proekt, в нёмфайл fail.cpp такого содержания
[FONT=monospace][FONT=verdana,geneva,lucida,'lucida grande',arial,helvetica,sans-serif]#include <cstdlib>
#include <iostream>
#include "functsia.cpp"
 
using namespace std;
int main(int argc, char *argv[]) {
    functsia (3, 6);
    return 0;
}
[/FONT][/FONT]
И файл functsia.cpp
[FONT=monospace][FONT=verdana,geneva,lucida,'lucida grande',arial,helvetica,sans-serif]#include <cstdlib>
#include <iostream>
 
using namespace std;
int functsia (int a, int b){
 return 0;
}
[/FONT][/FONT]
Всё, ничего не компилируется. А по отедльности (как я раньше делал) всё компилируется и создаётся в папке рабочий файл fail.exe (разве что ругнётся, что в functsia.cpp нет main () и всё на этом). Помогите, пожалуйста! Обидно, что по этой среде программирования днём с огнём литературы не сыщешь. По всяким другим Visual и прочее есть, а по этой нет.
7 ответов

kravam

я на DEV C++ не программирую но зачем 2 раза вызывать using namespace std; и если пишешь так #include "functsia.cpp" то тогда файл functsia.cpp должен находится в папке с инклюдами


kravam

Стоп. Я ВСЕ подключаемые файлы подключаю так: #include "ima_faila.cpp"Так это значит, что все подключаемые файлы кроме одного main.cpp будут находиться в инклудах? Получается, проект из одного файла? Один проект- один файл, остальные разбросаны по инклудам? Так я с этого начинал, к этому и вернулся, получается. Тут что-то не то.


kravam

В Visual studio 2008 я делаю так main.cpp
#include "stdafx.h"
 
using namespace std;
 
void main()
{
 hello();
}
в #include "stdafx.h"
#pragma once
 
#include "targetver.h"
 
#include <stdio.h>
#include <tchar.h>
 
 
 
// TODO: reference additional headers your program requires here
 
#include <iostream>
#include <windows.h> 
using namespace std;
void hello();
B файле hello.cpp
#include "stdafx.h"
void hello(){
    cout<<"Hello world\n\n";
    }
а где у тебя прототип функции


kravam

а где у тебя прототип функции
Видишь, жаль, что у тебя нет DEV C++ Отсутствие прототипа и дубляж строки
using namespace std
;Слишком явные обстоятельтва, чтобы яне обратил на них внимание. Я всяко пробовал уже. Не компилируется. Вот вариант другой... Короче, содержимое файлов то же, что и в первом сообщении, но в файл main.cpp добавлен прототип
int functsia (int a, int b);
А из файла functsia.cpp убрана строчка
using namespace std;
Бесполезно. Не компилируется проект, и всё. Хотя, повторюсь, если компилировать main.cpp отдельным файлом, то всё компилируется очень даже хорошо.


kravam

Посмотри в аттаче


kravam

Спасибо. Крайне удивлён обязательным отсутствием включения #include "functsia.cpp"... Я подобного ПРЕДПОЛОЖИТЬ НЕ МОГ ДАЖЕ. Нет, ну как так? Явное расхождение между академическим синтаксисом и "синтаксисом DEV C++"- так его назову. ...Надеюсь, что со временем привыкну.


kravam

Тоже удивлен.