Я запрограммировал немного C++ назад около 14 лет назад. Я познакомился с новыми технологиями, такими как .NET, с которыми я работаю в основном.Почему при создании нового класса C++ создаются два файла (.h и .cpp)?
Теперь, я пишу список телефонов телефона simlpe, приложение Windows, которое я хочу сделать на C++, чтобы лучше видеть различия на C# и C++.
Позвольте мне сказать, что я уже заметил разницу! Hehehe ... Следовательно, одно из этих различий заключается в том, что при создании нового класса C++ из шаблона Visual Studio он создает не только файл класса .cpp, но также заголовочный файл вместе с ним.
Почему это так? Зачем создавать файлы class1.h и class1.cpp для одного класса?
Я помню, что заголовочные файлы - это, вероятно, библиотеки функций и объектов, если можно так выразиться, для повторного использования в будущем, я правильно помню?
Вопросы
- Почему существуют два файла (.h и .cpp), созданный при добавлении нового класса C++?
- Должен ли я определять элементы в файле заголовка и определять ядро функций в файле 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++.
Спасибо, что помогли мне разобраться.
это C++/CLI - вы хотите использовать собственный C++ или управляемый код на C++? Есть серьезные отличия. – 2010-12-06 20:31:42
@Steve: Спасибо, что указали это мне. На самом деле, я не могу сказать. Я думаю, что родной C++ был бы лучше для меня достаточно окунуться в C++, чтобы я мог быстро встать и работать достаточно быстро, чтобы я мог эффективно разрабатывать приложение, верно? Или это даже достойно? – 2010-12-06 20:43:14