#include class Base { protected: void somethingProtected() { std::cout << "lala" << std::endl; } }; class Derived : public Base { public: void somethingDerived() { Base b; b.somethingProtected(); // This does not compile somethingProtected(); // But this is fine } }; int main() { Derived d; d.somethingDerived(); return 0; } Ho pensato che forse solo […]
Perché sia la class astratta che l’interfaccia esistono in C # se possiamo ottenere la caratteristica dell’interfaccia rendendo astratti tutti i membri della class. È perché: L’interfaccia esiste per avere ereditarietà multipla Ha senso avere un’interfaccia perché la funzione CAN-DO dell’object deve essere inserita in una class astratta di base piuttosto dell’interfaccia. Si prega di […]
Sono in procinto di convertire una gerarchia di classi da memorizzare in un database SQL. Pseudo codice originale: abstract class Note { int id; string message; }; class TimeNote : public Note { time_t time; }; class TimeRangeNote : public Note { time_t begin; time_t end; }; class EventNote : public Note { int event_id; […]
Quando abbiamo una new in C #, che personalmente vedo solo come soluzione alternativa per sostituire una proprietà che non ha una dichiarazione virtuale / sovrascrivibile, in VB.NET abbiamo due “concetti” Shadows e Overloads . In tal caso preferisci l’uno all’altro?
Attualmente sto creando un riferimento esplicito a questo nella class esterna in modo che io abbia un nome a cui fare riferimento nella class interna anonima. C’è un modo migliore per farlo?
Stavo leggendo su SOLID e altri principi di progettazione. Pensavo che l’ISP fosse lo stesso di “Programma per un’interfaccia, non un’implementazione”. Ma sembra che questi siano principi diversi? C’è una differenza?
Ho due classi di class A e di class B: static class ClassA { static string SomeMethod() { return “I am a Static Method”; } } class ClassB { static string SomeMethod() { return “I am a Static Method”; } } Voglio sapere qual è la differenza tra ClassA.SomeMethod(); e ClassB.SomeMethod(); Quando è ansible accedere […]
Ho trascorso gli ultimi 4 anni in C #, quindi sono interessato alle attuali best practice e schemi di progettazione comuni in C ++. Considera il seguente esempio parziale: class World { public: void Add(Object *object); void Remove(Object *object); void Update(); } class Fire : Object { public: virtual void Update() { if(age > burnTime) […]
Sto cercando di scoprire perché la class non può essere creata come statica? Piace: public static class Qwert{ public static void main(String args[]){ int x = 12; while(x<12){ x–; } System.out.println(" the X value is : "+ x); } }
Stavo Vector3 in XNA e ho visto che la class Vector3 campi pubblici anziché proprietà. Ho provato un rapido benchmark e ho scoperto che, per una struct la differenza è piuttosto drammatica (aggiungendo due vettori insieme a 100 milioni di volte hanno preso 2.0s con proprietà e 1.4 secondi con campi). Per un tipo di […]