Konkretno: imam klasu A i Factory.
Želim da klasu A može kreirati samo factory i niti jedna druga!!!!
Tražim nešto kao Friend u c++.
Molim pomoć..
Hvala
Konkretno: imam klasu A i Factory.
Želim da klasu A može kreirati samo factory i niti jedna druga!!!!
Tražim nešto kao Friend u c++.
Molim pomoć..
Hvala
Definiraj klasu A unutar klase Factory. Tako ćeš joj ograničiti područje definicije (scope).
A friend u C++u se odnosi na funkcije, a ne klase.
Kako misliš "kreirati"? friend se odnosi na članove roditeljske klase. Najbliža zamjena za friend u C#-u je internal, što se odnosi na assembly u kojem je klasa definirana.
Možeš koristiti i protected, ali i u tom slučaju moraš malo prilagoditi dizajn jer to označava nešto drugo.
U svakom slučaju ti savjetujem da redizajniraš kod i prilagodiš ga C# jeziku.
1->
class A
{
private class B {}
}
ili
2->
namespace xy {
internal class B {}
public class A {}
}
1. je ograničen na klasu A (B nemože biti vidljiviji od A)
2. je ograničen na assembly xy
i 3. korisiti seal keyword (pronudlaj)