#ifndef là “if not defined” (có chữ n) để kiểm tra xem _SUM_H_ có định nghĩa chưa, nếu chưa thì định nghĩa nó bằng dòng #define ở dưới, còn nếu đã có định nghĩa _SUM_H_ rồi thì khỏi khai báo lại lần nữa.
Vậy để ifdef thì nghĩa là nếu include n thì cho các dòng bên dưới thực hiện. Nếu như để ifndef thì có nghĩa là k cần include à? Vì khi k include n mới chạy đám bên dưới mà.
Hi Trọng Dũng.
ifdef = if def : Nếu đã define rồi thì thêm đoạn code dưới.
ifndef = if not def : Nếu chưa define thì thêm doạn code dưới.
Khi bạn include file .h ở nhiều chỗ thường dẫn đến việc bạn khai báo nguyên mẫu hàm nhiều lần. Thêm ifndef thì bạn tự suy nghĩ xem.
include guard trong
sum.h
sai. Phải ghi là#ifndef
là “if not defined” (có chữ n) để kiểm tra xem_SUM_H_
có định nghĩa chưa, nếu chưa thì định nghĩa nó bằng dòng#define
ở dưới, còn nếu đã có định nghĩa_SUM_H_
rồi thì khỏi khai báo lại lần nữa.Vậy để ifdef thì nghĩa là nếu include n thì cho các dòng bên dưới thực hiện. Nếu như để ifndef thì có nghĩa là k cần include à? Vì khi k include n mới chạy đám bên dưới mà.
Hi Trọng Dũng.
ifdef = if def : Nếu đã define rồi thì thêm đoạn code dưới.
ifndef = if not def : Nếu chưa define thì thêm doạn code dưới.
Khi bạn include file .h ở nhiều chỗ thường dẫn đến việc bạn khai báo nguyên mẫu hàm nhiều lần. Thêm ifndef thì bạn tự suy nghĩ xem.