considerare il mio codice C++ di seguito:visivo Expression Studio contenente un termine chiamato "con" non può essere valutata nella finestra di controllo
int _tmain(int argc, _TCHAR* argv[])
{
int by = 10;
printf("%d\n", by);
int bx = 20;
printf("%d\n", (by + bx));
return 0;
}
che funziona bene. La cosa divertente è con la variabile "by". Se provo ad aggiungere un orologio per un'espressione semplice che contiene, il risultato sarà CXX0030: Errore: l'espressione non può essere valutata.
Ad esempio, su un punto di interruzione return 0
, se aggiungo le seguenti orologi ottengo i risultati citati:
by : 10
bx : 20
by + 5 : CXX0030: Error: expression cannot be evaluated
bx + 5 : 25
by + bx : CXX0030: Error: expression cannot be evaluated
(by) + bx : 30
by + (bx) : CXX0030: Error: expression cannot be evaluated
bx + (by) : CXX0014: Error: missing operrand
questo accade in VS2010, VS2008 su più computer.
Quindi, più per curiosità, cosa sta succedendo con "by"? È una specie di strano operatore? Perché non ottiene lo stesso trattamento?
(ho provato google su questo, ma è abbastanza difficile da ottenere alcuni colpi importanti con termini come "da")
un bug report, ho anche qui – stijn
Ahhh, le mie speranze sono che questo è una sorta di caratteristica nascosta: D, non solo un bug ordinario. –
L'"operando mancante" è sopracciglio in particolare. – aschepler