klasa zagnieżdżona w C++/CLI

0

Napisałem taką bibliotekę w C++/CLI:

public ref class PJSIPLib
	{
		// TODO: Add your methods for this class here.
		// TODO: Add your methods for this class here.
		 public:
                // Returns a + b
                static double Add(double a, double b);
		static String^ GetVersion();
				
		ref class PJStatusT
		{				
		private:
			Int32^ pjValue;

		public :						
			property Int32^ Value
			{
				Int32^ get();
				void set(Int32^ value);				
			}
		};
		
		static PJStatusT^ CreatePJsua();
		
	};

I metody:

double PJSIPLib::Add(double a, double b)
{		
    return a + b;
}

System::String^ PJSIPLib::GetVersion() {
	return "3.0.0.0";	   
};

Int32^ PJSIPLib::PJStatusT::Value::get()
{	
	return pjValue;	
}

void PJSIPLib::PJStatusT::Value::set(Int32^ value)
{	
	pjValue=value;	
};

PJSIPLib::PJStatusT^ PJSIPLib::CreatePJsua() 
{    	
	PJSIPLib::PJStatusT^ status = gcnew PJSIPLib::PJStatusT();
	//status.   intellisense nic nie wypisuje po kropce
	return 0;	   
};

Dlaczego metoda CreatePJsua() nie jest widoczna na zewnątrz biblioteki?
Klasa zagnieżdżona nie może mieć modyfikatora public bo od razu kompilator się burzy.
Dodam, że klasa Add i GetVersion działają jak należy. Co robię źle? Jak sobie z tym poradzić?

0

Ponieważ odwołujesz się przez wskaźnik? Nie . tylko -> :|

1

//status. intellisense nic nie wypisuje po kropce

nie status.Value tylko status->Value

Klasa zagnieżdżona nie może mieć modyfikatora public bo od razu kompilator się burzy.
może, ale z dwukropkiem:

public: ref class PJStatusT

co tak naprawdę nic nie zmienia, bo parę linijek wyżej miałeś już public:.

Int32^ value

właściwie to po co ci zarządzany uchwyt na natywny typ, jakim jest Int32?

0

Jednak wszystko było dobrze. Po prostu jak skopiowałem projekt to zapomniałem dodać referencji do tej nowej biblioteki i zamiast niej referowała się stara wobec czego żadne zmiany się nie aktualizowały.

właściwie to po co ci zarządzany uchwyt na natywny typ, jakim jest Int32?

A w czymś to przeszkadza?

1 użytkowników online, w tym zalogowanych: 0, gości: 1