Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Native Development

Reply
Developer
Posts: 49
Registered: ‎03-27-2013
My Device: z10
My Carrier: Banglalink
Accepted Solution

Enum Forward Declaration of SystemUiResult

Can anyone please assist me how to forward declare enum "Type" inside class "SystemUiResult"? In one of my header file I want to use variable type enum named "Type" which is declared inside "bb/system/SystemUiResult". I can forward declare "SystemUiResult" like below-

namespace bb
{
	namespace system
	{
		class SystemUiResult;
	}
}

 Need to know how to forward declare enum?

 

Thanks.

 

Developer
Posts: 1,524
Registered: ‎12-18-2012
My Device: Z30, Z10 LE, DevAlpha C, PlayBook

Re: Enum Forward Declaration of SystemUiResult

Forward-declaring enums is possible only in C++0x (it seems bbndk has recent enough version of gcc for this), but only if the size of enum is known from declaration:

enum Enum:int;
or
enum class Enum; // enum class defaults to int

SystemUiResult::Type is a simple enum, so forward declaration won't work because the size of the enum is not known unless full definition is given:

class BB_SYSTEM_EXPORT SystemUiResult
{
...
    enum Type {

To use it the entire header needs to be included.

 

 

 

 

 


Andrey Fidrya, @zmeyc on twitter
Developer
Posts: 49
Registered: ‎03-27-2013
My Device: z10
My Carrier: Banglalink

Re: Enum Forward Declaration of SystemUiResult

Thank you very much.....