Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Di che paternità possiamo parlare se non conosci le basi, non potresti nemmeno creare correttamente un campo statico di classe.
(ci sono un sacco di articoli su singleton su hubrabs, e per cosa, e come, e cosa c'è di sbagliato).
Singleton o una classe statica?Usare il modello singleton
(ci sono un sacco di articoli su singleton su hubrabs e a cosa serve, e come, e cosa c'è di sbagliato)
Singleton o classe statica?Usare il pattern Singleton.
Pensate che non l'abbia mai incontrato? Non ho ancora capito come funziona. Ecco come stanno le cose. Ma, a quanto pare, non ho bisogno di un singleton. Quindi mi accontento dei membri statici.
Come possiamo parlare di paternali se non conosci le basi, non potresti nemmeno creare correttamente un campo statico di classe.
Se sapete come fare, potete correggerlo. Ieri ho scritto secondo la documentazione. Ma ci sono anche molti errori. Come questo:
Cosa c'è dopo?
Ho buttato via quello sbagliato. Comunque, la versione attuale è corretta qui:
Immagino che ora dovrò fare riferimento ad ogni variabile statica con un nome così lungo?
Symbol_Properties::gd_Spread = 0;
O è più facile implementarlo in modo che dopo la descrizione della struttura di inizializzazione della variabile, quando viene inizializzata, il membro statico corrispondente dovrebbe essere assegnato a qualche variabile di tipo:
E poi nel codice ci si riferisce alle corrispondenti variabili statiche con questa variabile, giusto?
Sì, beh... La cosa principale è cheVadim sa :)))))
Sì, questo è il tipo di dialogo normale:
D: I miei amici mi hanno consigliato delle caramelle. È proprio quello di cui ho bisogno!
Io: (Perplesso... Cosa ha a che fare questo con le caramelle? Forse B sta andando alla festa di compleanno di un amico o vuole regalare i bambini, forse i suoi o quelli di qualcun altro? Forse si è messo in affari e ora vende caramelle. Forse era l'ultima caramella in Bielorussia e B è ora un monopolista. E se a B mancassero i dolci? Un sacco di altri pensieri mi sono passati per la testa sul tema "perché le caramelle e cosa farci". Ancora una volta, come prima con B, le mie capacità telepatiche mi hanno deluso. Non mi è venuto in mente niente).
Non un indizio.
1. A cosa serve tutto questo?
2. Ci sono due modi per accedere ai campi statici di una classe (la struttura è una classe ad accesso pubblico per default e per ereditarietà):
(a) Attraverso lo spazio dei nomi della classe - ad esempioSymbol_Properties::gd_Spread
(double Spread = Symbol_Properties::gd_Spread) - il valoreSpread diventa uguale agd_Spread della classeSymbol_Properties
(double Spread = Symbol_Properties::gd_Spread =0) valore digd_Spread dallaclasse Symbol_Properties e il valoreSpread diventa uguale a 0
b) creare un oggetto di classe (per esempio,Symbol_Properties obj; ) e riferirsi ad esso come un campo abituale della classe attraverso questo oggetto
(doppio Spread = obj.gd_Spread)
(double Spread = obj.gd_Spread =0)
1. A cosa serve tutto questo?
Convenienza... Dopo tutto, se queste variabili sono usate in una singola istanza, perché dovrei creare un oggetto? Inoltre, è molto più comodo leggere il codice quando si fa riferimento a una variabile, se NOME DELLA VARIABILE.
2. Ci sono due modi per accedere ai campi statici della classe (la struttura è una classe con accesso pubblico di default e l'ereditarietà)
(a) attraverso lo spazio dei nomi della classe - ad esempioSymbol_Properties::gd_Spread
(double Spread = Symbol_Properties::gd_Spread) - il valoreSpread diventa uguale agd_Spread della classeSymbol_Properties
(double Spread = Symbol_Properties::gd_Spread =0)- il valoregd_Spread dalla classeSymbol_Properties e il valoreSpread diventa uguale a 0
Esattamente! Ecco perché ho fatto così. Inizializzo immediatamente la variabile che si riferisce alla variabile di questa struttura con zero e poi viene memorizzata in modo permanente. Il che è logico, perché queste variabili sono necessarie in una sola istanza. Ecco perché non c'è motivo di creare un oggetto diverso in questo caso. Dopo tutto, è logico... Non sei d'accordo con me?
b) Creare un oggetto di classe (per esempioSymbol_Properties obj; ) e riferirsi ad esso come un normale campo di classe attraverso questo oggetto
STATE VARIABLE non mi ha fatto piacere, perché sono usati in classi diverse. Così li ho raggruppati.
Le costanti non piacciono perché le costanti non cambiano i loro valori, mentre queste variabili dovrebbero essere in grado di cambiare i loro valori.