Trong C ++, khai báo và định nghĩa thường bị nhầm lẫn. Một khai báo có nghĩa là (trong C) rằng bạn đang cho trình biên dịch biết về kiểu, kích thước và trong trường hợp khai báo hàm, kiểu và kích thước của các tham số của biến bất kỳ, kiểu hoặc hàm do người dùng xác định trong chương trình của bạn. Không có khoảng trống nào được dành trong bộ nhớ cho bất kỳ biến nào trong trường hợp có khai báo.
Mặt khác,Định nghĩa có nghĩa là khi bổ sung cho tất cả những thứ mà khai báo thực hiện, không gian sẽ được dự trữ thêm trong bộ nhớ. Bạn có thể nói "DEFINITION =KHAI BÁO + ĐẶT CHỖ".
Sau đây là các ví dụ về khai báo -
extern int a; // Declaring a variable a without defining it struct _tagExample { int a; int b; }; // Declaring a struct int myFunc (int a, int b); // Declaring a function
Trong khi sau đây là các ví dụ về định nghĩa -
int a; int b = 0; int myFunc (int a, int b) { return a + b; } struct _tagExample example;