Давате я приведу Вам английскую терминологию. Объявление говорит компилятору, что такое имя или программный элемент существует. Определение описывает данное имя. Любое имя для использования должно быть объявлено.
Вводят одно или больше имен в программу. Объявление служит одновременно и определением за исключением случаев:
Пример объявлений и определений:
int i; int j = 10; class CheckBox : public Control { public: Boolean IsChecked(); virtual int ChangeState() = 0; };
Просто объявление:
extern int i; char *strchr( const char *Str, const char Target );
Определение - уникальная спецификация объекта или переменной, функции, класса или списка. Поскольку определения должны быть уникальными, программа может содержать только одно определение для данного программного элемента.