-
Thực hiện: Thi Minh Nhựt - Email: thiminhnhut@gmail.com
-
Thời gian: Ngày 20 tháng 11 năm 2018
-
Ví dụ:
-
Ta có 2 class
ClassA
(gồm 2 fileClassA.h
vàClassA.cpp
) vàClassB
(gồm 2 fileClassB.h
vàClassB.cpp
). -
Trong
ClassB
có sử dụngClassA
.-
Với cách làm thông thường: trong
ClassB.h
chúng ta#include "ClassA.h"
và trongClassB.cpp
chúng ta#include "ClassB.h"
. -
Vì
ClassB.h
đã#include "ClassA.h"
vàClassB.cpp
cũng có#include "ClassA.h"
thông qua#include "ClassB.h"
(doClassB.cpp
có#include "ClassB.h"
). -
File
ClassB.cpp
lúc nào cũng cần#include "ClassA.h"
nhưng không phải lúc nàoClassB.h
cũng cần#include "ClassA.h"
. -
Việc
#include
thừa, nếu không cần thiết thì làm tốn thời gian biên dịch chương trình.
-
-
Nếu
ClassB.h
chỉ tham chiếu đếnClassA
thông qua con trỏ hoặc biến tham chiếu (mà không gọi đến các phương thức gồm cảcontructor
hoặc bất kỳ thuộc tính nào củaClassA
) thì chúng ta sử dụng chức năngForward Declaration
thay vì#include "ClassA.h"
-
Sử dụng chức năng
Forward Declaration
cho ví dụ:-
Trong
ClassB.h
thêm dòngclass ClassA;
(đặt ngoàiclass ClassB
). -
Trong
ClassB.cpp
thì cả#include "ClassA.h"
và#include "ClassB.h"
-
-