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

Вызов файлов - C++

Восстановить пароль Регистрация
 
Corax111
0 / 0 / 0
Регистрация: 16.06.2013
Сообщений: 74
15.09.2013, 02:17     Вызов файлов #1
Я уже обращался сюда с этим вопросом, новый вопрос возник)
Итак, как я понял, файлы подключаются, ни так как библиотеки (т.е. не #include<>, а #include " ")
Вопрос таков, как вызвать файл в необходимом месте?
То есть, я пытаюсь сделать как-то так
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std;
 
 
int main()
{
#include "app.cpp" // проблема в том, что потом пишет, что у '{' нет пары...
    
    system("pause");
}
В свою очередь в app.cpp вот что
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
using namespace std;
 
int newFunc() // не main() потому что пишет, что многократно определен один символ, или что-то в этом духе...
{
    int o = 1;
    cout << "Hello, world" << endl;
    system("pause");
    return(o);
 
}
Не подскажите, как все это устроить? А то писать все одном файле... несколько коряво и слишком наворочено выглядит, сам потом теряюсь в коде))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.09.2013, 02:17     Вызов файлов
Посмотрите здесь:

C++ Вызов функции
C++ Вызов функций
Вызов функции C++
Вызов функций из файлов. C++
C++ Вызов функции!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
UranFlex
131 / 129 / 21
Регистрация: 25.05.2013
Сообщений: 233
15.09.2013, 02:30     Вызов файлов #2
C++
1
#include "app.cpp"
Такое не используется в c++
Если у Вас какая-либо IDE, то, обычно, через ее меню создается новый файл .cpp исходного кода и сохраняется в каталоге проекта.
Если используете компилятор через консоль, то для нескольких файлов привожу пример параметров для компилятора g++
Bash
1
g++ main.cpp func.cpp
или, если много файлов в проекте, то можно написать
Bash
1
g++ *.cpp
Corax111
0 / 0 / 0
Регистрация: 16.06.2013
Сообщений: 74
15.09.2013, 02:38  [ТС]     Вызов файлов #3
У меня Visual C++ express 2010, я пробовал без инклюдов, он вообще игнорирует второй файл))
Brust
35 / 29 / 8
Регистрация: 16.07.2012
Сообщений: 68
15.09.2013, 02:48     Вызов файлов #4
Вот что бы небыло путаницы, придумали правило:
Заголовочные файлы .h должны содержать обьявления функций, классов и т.д.
В .cpp же файлах принято писать реализацию уже этих функций.
Ибо компилятор при сборке проекта, сначало компилирует каждый .cpp файл из проекта отдельно, даже если код из него больше нигде не используется, и создает одноименные им объектные файлы - .o или .obj.
И только после компиляции каждого .cpp файла, уже после, из объектных файлов и собирается исполняемый файл.

По этому, в любой IDE, если .cpp файл включен в проект, он в любом случае будет скомпилирован, и смысла его подключать как у вас - уже нет.
А чтобы использовать функцию из другого .cpp, достаточно подключить .h файл с определением этой функции.
Возьмите правило на карандаш )
UranFlex
131 / 129 / 21
Регистрация: 25.05.2013
Сообщений: 233
15.09.2013, 02:51     Вызов файлов #5
а создавал файд через меню IDE?
Corax111
0 / 0 / 0
Регистрация: 16.06.2013
Сообщений: 74
15.09.2013, 02:53  [ТС]     Вызов файлов #6
Спасибо, попробую, пользуясь случаем)
есть такие команды, как system(dir), system(call), это я с cmd выкопал)) Так вот ,как сделать так, чтобы они работали, как в сmd?
C++
1
2
3
4
5
6
7
8
int main()
{
setlocale(LC_ALL, "Russian");
string i;
cin >> i;
system("call: i"); /* вот, я решил делать так, пробовал  и пробел, и вот так, и через запятую.. не работает.. как же в microsoft это реализовали? Может кто экспериментировал с этим и подскажет? */
system("pause");
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.09.2013, 06:31     Вызов файлов
Еще ссылки по теме:

C++ Вызов функции
Вызов программ C++
Сравнить содержимое файлов между собой, и если оно совпадает, то вывести на экран имена этих файлов C++

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

Или воспользуйтесь поиском по форуму:
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
15.09.2013, 06:31     Вызов файлов #7
Цитата Сообщение от Corax111 Посмотреть сообщение
я пытаюсь сделать как-то так
Нужно так: если файл существует, то поместить его в папку проекта, потом правой кнопкой по Файлы исходного кода - Добавить - Существующий элемент. Откроется, в обзоре, папка проекта. Выбрать файл, добавить. Создавать можно так же: Добавить - Создать элемент. Файл появится в проекте. Делать инклуд, .cpp файла, не нужно.

Добавлено через 6 минут
Цитата Сообщение от Corax111 Посмотреть сообщение
Так вот ,как сделать так, чтобы они работали
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <string>
#include <cstdlib>
 
using namespace std;
 
 
int main()
{
    setlocale(LC_ALL, "Russian");
    string i;
    cin >> i;
    system(i.c_str()); 
    system("pause");
    return 0;
}
Yandex
Объявления
15.09.2013, 06:31     Вызов файлов
Ответ Создать тему
Опции темы

Текущее время: 03:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru