Простой вопрос по C++ от новичка
Сегодня столкнулся с такой проблемой, и искал как только мог, но ничего не нашел. Либо плохо искал либо проблема настолько банальная что про нее никто и не спрашивал. Создаю новый заголовочный файл допустим "Test.h", затем создаю новый файл .cpp и называю его допустим "Test.cpp", затем создаю свою структуру допустим "struct Student", затем добавляю в файл "TestProject.cpp"(здесь находиться main()) "#include Test.h". Затем в main() пытаюсь объявить массив этих самых "Student". Весь код приведен ниже. И тогда натыкаюсь на эти ошибки: "E0070 недопустимый неполный тип"; "C2027 использование неопределенного типа Student". Интересно, что если я создаю структуру в "TestProject.cpp", то все будет работать как нужно. Что я делаю не так не понимаю. Заранее спасибо за помощь.
Файл TestProject.cpp :
#include "Test.h"
int main()
{
Student* students = new Student[100];
}
Файл Test.h :
#pragma once
struct Student;
Файл Test.cpp :
#include "Test.h"
struct Student
{
int age;
char name[10];
};
Альтернативный(рабочий) TestProject.cpp :
struct Student
{
int age;
char name[10];
};
int main()
{
Student* students = new Student[100];
}