void f( int& i ){ Print( i ); }
voidOnStart()
{
int a, b;
f( a = 5 ); //error: '=' - parameter passed as reference, variable expected
f( b = a ); //error: '=' - parameter passed as reference, variable expected
}
void f( int& i ){ Print( i ); }
voidOnStart()
{
int a, b;
f( a ==5 ); //error: '=' - parameter passed as reference, variable expected
f( b == a ); //error: '=' - parameter passed as reference, variable expected
}
A100: Nel tuo esempio l'errore è giustificato, nel mio caso è diverso
Non ho letto attentamente il codice e ho pensato automaticamente che avete un'istruzione condizionale if, ma avete solo una funzione chiamata f.
Dovreste passare una variabile o un valore precalcolato alla funzione, non un'espressione.
void f( int& i ){ Print( i ); }
voidOnStart()
{
int a = 5;
int b = a;
f(a); //error: '=' - parameter passed as reference, variable expected
f(b); //error: '=' - parameter passed as reference, variable expected
}
Ci sono alcuni suggerimenti sulla funzione ArrayResize. Abbiamo bisogno di aggiungere la possibilità di impostare il parametroreserve_size a -1, il che significherebbe usare il valore precedentemente impostato. Alloranon dovremmo memorizzare o portare in giro questo valore. Sarebbe sufficiente ridimensionare prima con la riserva richiesta, e poi non preoccuparsene .Altrimenti, è un inconveniente costante, quando si passa un array a qualche funzione, che lo ridimensiona, ma non sa nulla della riserva preimpostata su di esso, e come risultato lo esaurisce, portando a riallocazioni di memoria non necessarie in seguito. Dopo tutto, suppongo, questo valore è memorizzato da qualche parte per un array. O non lo è?
Si prega di spiegare il seguente comportamento:
È stabile e in ogni momento o al primo tick dell'indicatore di funzionamento?
Il valore _LastError manca nella finestra di wotch
Sei sicuro?
Se il primo è uguale, il secondo sarà uguale.Errore di compilazione
Errore di compilazione
Nel tuo esempio l'errore è giustificato, nel mio caso è diverso
Non ho letto attentamente il codice e ho pensato automaticamente che avete un'istruzione condizionale if, ma avete solo una funzione chiamata f.
Dovreste passare una variabile o un valore precalcolato alla funzione, non un'espressione.
Dovete passare una variabile o qualche valore precalcolato nella funzione, non un'espressione.
Qual è la differenza?
Qual è la differenza?
Nel primo caso, viene passata una variabile, nel secondo, il risultato dell'operazione. E chissà cosa è stato escogitato per l'assunzione
In effetti, questo errore di riferimento è stato fastidioso per molto tempo, e non dovrebbe esserci affatto.
Qual è la differenza?
Ci sono alcuni suggerimenti sulla funzione ArrayResize. Abbiamo bisogno di aggiungere la possibilità di impostare il parametroreserve_size a -1, il che significherebbe usare il valore precedentemente impostato. Alloranon dovremmo memorizzare o portare in giro questo valore. Sarebbe sufficiente ridimensionare prima con la riserva richiesta, e poi non preoccuparsene .Altrimenti, è un inconveniente costante, quando si passa un array a qualche funzione, che lo ridimensiona, ma non sa nulla della riserva preimpostata su di esso, e come risultato lo esaurisce, portando a riallocazioni di memoria non necessarie in seguito. Dopo tutto, suppongo, questo valore è memorizzato da qualche parte per un array. O non lo è?