Originariamente inviato da XWolverineX
Nota come l'intellisense del C# è tutta un'altra cosa rispetto a quella del C++
Molte volte sbaglia i membri.
Fino alla versione 2003 parsava tutti gli header e non solo quelli che avevi effettivamente usato
Molte volte non funziona, non mostra gli argomenti delle funzioni, i metodi delle classi...
Nel C# basta premere un tasto qualsiasi e già un intellisense completo ti scrive automaticamente un programma, ti mette tutte le parole-chiave, mentre nel C++ quando vedi colorate le lettere sembra già che ti stiano facendo un piacere...
Secondo me questo dipende dal fatto che in C/C++ tutto si basa su un intrico di header da cui l'IntelliSense verrebbe fuori a fatica se stesse a fare dei controlli accurati: renditi conto: se per ogni ".", "::", "->" che digiti o inclusione che cambi IntelliSense dovesse stare a ri-precompilare tutto il codice, ad effettuarne il parsing, a trovare gli scope di tutte le funzioni e così via si butterebbe via un mucchio di tempo... perciò probabilmente hanno preferito utilizzare un approccio più "grezzo" ma più conveniente in termini di efficienza. In C# o in altri linguaggi .NET, al contrario, le classi e le funzioni disponibili sono descritte con grande semplicità tramite i metadati contenuti nei binari .NET, per cui per l'IntelliSense è molto semplice e rapido capire che elementi sono disponibili nel contesto corrente.