Делаю одну программу для эксперимента и возникла одна ошибка. Сделал новый проект и оставил ту же функцию и те же свойства, а ошибка так и осталась, в чем может быть дело? Ошибка: функция "int main(void)" уже имеет текст реализации (C2084)
Source.cpp
#include <iostream>
#include <Windows.h>
#include "func.h"
using namespace std;
void Interface();
int main() {
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
Interface();
}
func.h
#pragma once
#include "Source.cpp"
void Interface() {
int quest;
while (true) {
cout << "1. Открыть базу" << endl;
cout << "2. Закрыть программу" << endl;
cout << "Номер пути _\b";
cin >> quest;
if (quest = 1) {
cout << "Открыто!";
}
else if (quest = 2) {
cout << "Закрыто!";
}
}
}
У вас неверное понимание, что должно находиться в заголовочном файле, а что - в .cpp.
В заголовочном файле располагайте объявления, а определения - в cpp-файле. В заголовочном файле располагаются также inline-реализации, шаблоны и т.п. вещи, но в вашем случае все, что следует разместить в func.h - это
void Interface();
Все остальное - в .cpp-файлах, и не включать .cpp-файлы с помощью директивы #include - иначе вы получаете нарушение правила одного определения.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости