Я немного программировал на C ++ около 14 лет назад.Я познакомился с новыми технологиями, такими как .NET, с которыми я в основном работаю.
Теперь я пишу приложение Windows для списка телефонов simlpe, которое я хочу сделать C ++, чтобы лучше видеть C #и C ++ различия.
Позвольте мне сказать, что я уже заметил разницу!Хехехе ... Следовательно, одно из этих различий заключается в том, что при создании нового класса C ++ из шаблона Visual Studio он создает не только файл класса .cpp, но и файл заголовка вместе с ним.
Почемучто так?Зачем создавать файлы class1.h и class1.cpp для одного класса?
Я помню, что заголовочные файлы - это, скорее всего, библиотеки функций и объектов, если можно так сказать, для повторного использования в будущем, я правильно помню?
Вопросы
- Почему при добавлении нового класса C ++ создаются два файла (.h и .cpp)?
- Должен ли яопределить элементы в заголовочном файле и определить ядро функций в файле cpp?
- Если нет 2, для чего нужен заголовочный файл в этом конкретном сценарии?
EDIT # 1
Тогда мой код должен выглядеть следующим образом?
// Customer.h header file
ref class Customer {
private:
char* _number, _name;
long _phoneNumber;
public:
char[] get_number();
void set_number(char* number);
char[] get_name();
void set_name(char* name);
long get_phoneNumber();
void set_phoneNumber(long phoneNumber);
void set_name(char* name);
}
Тогда:
// Customer.cpp
#include <Customer.h>
char[] Customer::get_number() {
return _number;
}
void Customer::set_number(char* number) {
if (number != null && sizeof(number) < 1) return;
_number = number;
}
// And the other members here...
Теперь я знаю, что большинство будет многоошибки в моем коде.Я буду рад, если вы поможете мне исправить их, чтобы я мог улучшить свои навыки C ++.
Спасибо, что помогли мне разобраться в этом.