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
Sono confuso, per favore consigliatemi.
Ho creato una struttura, l'ho riempita di dati, ho creato un array di strutture.
Come posso ora passare un array a una funzione, ma solo per un elemento della struttura ??????????????
Suggerimento agli sviluppatori, se possibile sarebbe bene eseguire operazioni standard con le strutture
non come questo:
ma così:
Copiare le strutture è una cosa del passato.Sono confuso, per favore consigliatemi.
Ho creato una struttura, l'ho riempita di dati, ho creato un array di strutture.
Come passare un array a una funzione, ma solo per un elemento della struttura ??????????????
Non si può. E non ne hai bisogno.
Perché - chi impedisce alla funzione sommatrice di sommare solo quell'elemento?
E così il codice è stato corretto per renderlo "kosher":
Solo qualcosa come ArraySize() dovrebbe essere usato in realtà invece di 10 nel ciclo for all'interno della funzione OnStr(). E invece di y in "sum+=x[i].y" sommate il campo dati reale definito nella struttura (a o b, per esempio).
Suggerimento agli sviluppatori, se possibile sarebbe bene eseguire operazioni standard con le strutture
non come questo:
ma così:
La copia delle strutture è una cosa del passato.Esiste una cosa del genere in C++. Si chiama "sovraccarico dell'operatore". È il programmatore che definisce come deve funzionare usando la funzione corrispondente.
Ma questa funzione Renat ha detto "no". Sfortuna, eh?
Non posso. E non ce n'è bisogno.
Perché chi vi impedisce di sommare esattamente quell'elemento nella funzione di somma?
Quindi il codice è stato corretto in "kosher":
Solo qualcosa come ArraySize() dovrebbe essere usato al posto di 10 nel ciclo for all'interno della funzione OnStr(). E invece di y in "sum+=x[i].y" sommate il campo dati reale definito nella struttura (a o b, per esempio).
Come sempre quando faccio degli esempi il punto è volato via, ma non mi sorprende che sia probabilmente la mia lingua ossuta.
E il succo è questo: scrivere una funzione di media aritmetica e poi semplicemente passando un array di strutture a questa funzione, ottenere la struttura della media aritmetica per ciascuno dei membri della struttura.
L'esempio è dato per semplicità, ma probabilmente non ha successo. Ma grazie per i chiarimenti di principio.
Credo che dovremmo davvero sbatterci gli sviluppatori per permettere il "sovraccarico dell'operatore".
Sì, ho dovuto scrivere un sacco di metodi solo per aggiungere, moltiplicare, dividere, due strutture,
la cosa più fastidiosa è che dovremo scrivere tutto da capo su altre strutture.
PS Oltre ai metodi che danno il tipo di struttura, quelli che restituiscono la stessa struttura con cui operiamo quindi la chiamata annidata non passa?
il risultato deve prima essere salvato in una struttura temporanea e poi passato all'elaborazione successiva ?? non è chiaro perché si faccia così.
PPS Anche se tutti i parametri sono costanti non c'è la possibilità di cambiare una variabile non esistente.
PPPS E scusate, le strutture sono passate per riferimento, come potete fare riferimento a una struttura inesistente (a quanto pare, è ora di riposare).
Sono confuso, per favore consigliatemi.
Ho creato una struttura, l'ho riempita di dati, ho creato un array di strutture.
Come passare un array a una funzione, ma solo per un elemento della struttura ??????????????
Non si può. E non ne hai bisogno.
Perché - chi impedisce alla funzione sommatrice di sommare solo quell'elemento?
Quindi, il codice è adattato a "kosher":
Solo qualcosa come ArraySize() dovrebbe essere effettivamente usato, non 10 nel ciclo for dentro OnStr(). E invece di y in "sum+=x[i].y" sommate il campo dati reale definito nella struttura (a o b, per esempio).
Ci sono due modi (per quanto ho capito):
1. Passa l'array stesso, specificando l'indice del record con cui lavoreremo come parametro aggiuntivo.
In questo caso, abbiamo bisogno di controllare la dimensione dell'array, e la dichiarazione della funzione sarebbe qualcosa del genere...
2. Passa la matrice secondaria con la dimensione di un record, rispettivamente tutto il lavoro di controllo e di elaborazione dei risultati della funzione è tenuto al punto di chiamata della funzione.
La dichiarazione della funzione sarà quindi qualcosa di simile a questo
Osservazione errata"possibile perdita di dati a causa della conversione del tipo"? (Costruire: 305)
È necessario convertire esplicitamente il risultato nel tipo int.
PS
Si può vedere un esempio funzionante qui - OrderSend()
Ma da quanto ho capito, questo avvertimento può essere ignorato in linea di principio...
Se il ritorno ha molte parentesi - comincia a confondersi!?
Ecco, per esempio, una funzione che restituisce un numero da una stringa come "klsfd Step 2:
In cosa è diverso da questo?
La seconda causerà problemi di compilazione, ma la prima no.