recente ho iniziato a lavorare con flusso di dati di analisi API fornite da Roslyn e trovare i valori presentati in campo e posizioni WrittenInside campo un po 'ambiguo.Roslyn dati di analisi del flusso - valori ambigui per WrittenInside e delle posizioni dei campi
Considerate sotto frammento di codice nel metodo Main
1. int[] lcolSample = new int[10] { 0, 1, 2, 3, 4, 0, 1, 2, 3, 4};
2. for (int lintCount1 = 0; lintCount1 < 10; lintCount1++)
3. {
4. Prog1(lintCount1);
5. int[] lcolSample1 = new int[10] { 0, 1, 2, 3, 4, 0, 1, 2, 3, 4 };
6. lintCount3 = lintCount3 + 100;
7. lintCount1 = lintCount1 + 2;
8. lcolSample[lintCount1-1] = lcolSample1[lintCount1] + 100;
9. }
Se eseguo DFA su per il nodo del ciclo, con conseguente oggetto l'analisi del flusso di dati non mostra mai lcolSample [] nel campo WrittenInside come simbolo che è scritto all'interno per ciclo continuo. Il motivo è che viene dichiarato al di fuori del nodo su cui viene eseguita l'analisi Dataflow. Ma, il campo ReadInside mostra questo simbolo. C'è un modo per conoscere tutti i simboli che sono stati modificati/scritti all'interno di un dato nodo anche se sono dichiarati al di fuori del nodo su cui viene eseguito DFA?
lintCount1 variabile è scritto due volte (dichiarazione 2 e 7) e leggere due volte. La proprietà Locations su lintCount1 mostra solo il luogo in cui è dichiarata (dichiarazione 2). C'è un modo per trovare tutte le posizioni in cui è scritto lintCount1? Trova tutti i riferimenti di quel simbolo darebbe tutte le posizioni in cui viene utilizzato il simbolo, ma ho bisogno delle posizioni in cui è scritto ma non letto.
Questa è la mia prima domanda su questo forum. Si prega di chiedere altri dettagli se le informazioni fornite sopra non sono sufficienti. Grazie in anticipo ..
Analisi
'lcolSample' non è mai scritto all'interno del ciclo. Tuttavia, si legge sulla linea 8. – JoshVarty
modifica dei dettagli della realizzazione di cui da una variabile non è la stessa modificando la variabile. – SLaks
@JoshVarty - sorry .. il mio errore .. riga modificata 8 - è stato concepito per essere come questo – Sreenath