I'm a beginner iOS/ObjectiveC coder and am trying to understand some details rather than just dumbly following the example code I see.
I think I get the gist of a forward declaration in a .h file: it tells the compiler that the specified class is a "player to be defined later" - and then the header is imported in the .m file.
What I don't understand is why not just import the class header in the header where the class is referenced, rather than use a forward declaration? My understanding of #import is it won't import the header more than once (as would #include - which necessitates the if_def stuff).
Do I have this all wrong?