We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello,
i have a question related to Realview Compiler V3.0. Is the forward declaration of a class not supported or is it a mistake of me? Please look the example below:
class clsB; // Forward Declaration Not Working class clsA { public: clsA(); // Constructor clsB oB; // Compiler error: #70: incomplete type is not allowed }; class clsB { public: clsB(); // Constructor };
Thank you Eugen
The forward declaration worked fine. It is the use of the incomplete type that is not allowed.
class clsA { public: clsA(); // Constructor clsB oB; // Compiler error: #70: incomplete type is not allowed };
Is not allowed (because it needs to know the full type of claB)
class clsA { public: clsA(); // Constructor clsB *oB; // No Compiler error: };
Is allowed because it does not need to know the full type of claB at this point.