2013-07-18 2 views
4

Я только начал изучать C++, и я использую Microsoft Visual Studio Express 2012. Я начал проект, где планировал иметь все мои .cpp-файлы, но у меня теперь возникла проблема, когда я пытаюсь скомпилировать и запустить специфический .cpp-файл, он не работает.Есть ли способ скомпилировать и запустить один .cpp-файл в проекте Visual Studio Express '12?

VS, похоже, просто компилирует и запускает файл .cpp с основной функцией в нем, и он создает .exe и запускает его. Так как мой первый .cpp-файл (который содержит main()), является простой программой hello world, я получаю только эту информацию, когда пытаюсь скомпилировать и запустить сейчас.

У меня есть другой файл .cpp с функцией int age(), которая должна запрашивать возраст пользователя, а затем выводить его. Это очень просто, и я просто хочу запустить его, чтобы увидеть его в действии, но я не могу понять, как скомпилировать этот конкретный .cpp-файл в моем проекте, поскольку кажется, что он просто хочет скомпилировать основной файл .cpp с основным ().

Как я могу скомпилировать конкретный .cpp в проекте?

+0

, даже если вы можете скомпилировать этот единственный файл (что довольно просто: щелкните правой кнопкой мыши файл, включите его и исключите остальные), он не будет связываться, так как функция main() больше не будет – stijn

+0

В консольной программе , вам понадобится функция 'main()', чтобы выступать в качестве отправной точки для программы. –

+0

ну, вы не можете скомпилировать определенный cpp. Вы можете скомпилировать конкретные проекты (если у них есть правильный тип - например, библиотека). То, что вы, скорее всего, ищете, - это объявление заголовка и тела. Обычная речь, вы объявляете свою функцию в «includeme.h» и записываете ее в «includeme.cpp». В вашем main.cpp вы будете '#include includeme.h', и теперь вы можете использовать функцию' age() 'в' main() ' – Najzero

ответ

2

Все программы на C++ начинаются с функции main. Почему бы вам не позвонить по телефону age() от main?

Конечно, для этого вам понадобится ваш main.cpp, чтобы быть в курсе, что есть функция, называемая age. Это где файлы заголовков приходят в

В общей сложности, поэтому вам необходимо следующее:.

main.cpp

#include "age.h" 

int main() { 
    age(); 
    return 0; 
} 

age.h

#ifndef AGE_H 
#define AGE_H 

int age(); 

#endif 

age.cpp

#include "age.h" 

int age() { 
    // Do age stuff. 
    return 42; 
} 
+0

дать бедному новому программисту образец кода * how *. – Yakk

+0

А, спасибо большое за ответ. Это имело смысл! – Cristian

1

Попробуйте делить файлы .cpp на проекты, если вам действительно нужно их компилировать отдельно. но для этого вам тоже понадобится главное в каждом из проектов.

Другой выбор у вас есть dll проектов. Но, поскольку вы сказали, что хотите сохранить его простым, я не предложу его.

Для слишком простых консольных программ используйте более простые & более простые IDE. Но что бы ни было IDE, ccp файлов (даже c) программы могут запускаться только с основного.

Смежные вопросы