How do I do forward referencing / declaration in C++ to avoid circular header file references?
I have the #ifndef guard in the header file, yet memory tells me I need this forward referencing thing - which i've used before >< but can't remember how.
You predeclare the class without including it. For example:
//#include "Foo.h" // including Foo.h causes circular reference
class Foo;
class Bar
{
...
};
I believe the correct term for what you are talking about is "forward declaration". "Forward referencing" would be a bit confusing.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With