Articles of scope

Qual è lo scopo della variabile contatore in un ciclo for?

Ottengo il seguente errore in Visual Studio 2008: Error 1 A local variable named ‘i’ cannot be declared in this scope because it would give a different meaning to ‘i’, which is already used in a ‘child’ scope to denote something else Questo è il mio codice: for (int i = 0; i < 3; […]

ambito variabile dispari nell’istruzione switch

Questa domanda mi ha ricordato una vecchia domanda senza risposta nella mia mente riguardo all’interruttore: int personType = 1; switch (personType) { case 1: Employee emp = new Employee(); emp.ExperienceInfo(); break; case 2: Employee emp = new Employee(); //Error: A local variable named ’emp’ is already defined in this scope emp.ManagementInfo(); break; case 3: Student […]

Qual è il punto di un metodo statico in una class non statica?

Ho difficoltà a comprendere gli errori sottostanti con il codice qui sotto: class myClass { public void print(string mess) { Console.WriteLine(mess); } } class myOtherClass { public static void print(string mess) { Console.WriteLine(mess); } } public static class Test { public static void Main() { myClass mc = new myClass(); mc.print(“hello”); myOtherClass moc = new […]

Dichiarare le variabili all’interno dei loop FOR

Un bizzarro insetto si stava verificando nella produzione a cui mi è stato chiesto di esaminare. Il problema è stato rintracciato in un paio di variabili dichiarate all’interno di un ciclo For e non inizializzate su ciascuna iterazione. Era stato ipotizzato che, a causa della portata della loro dichiarazione, sarebbero stati “ripristinati” a ogni iterazione. […]

C # – funzioni anonime e gestori di eventi

Ho il codice seguente: public List FindStepsByType(IWFResource res) { List retval = new List(); this.FoundStep += delegate(object sender, WalkerStepEventArgs e) { if (e.Step.ResourceType == res) retval.Add(e.Step); }; this.Start(); return retval; } Si noti come registro il mio membro evento (FoundStep) alla funzione anonima locale sul posto. La mia domanda è: quando la funzione ‘FindStepByType’ finirà […]

Campi statici in una class base e classi derivate

In una class base abstract se abbiamo alcuni campi static , cosa succede loro? Il loro ambito sono le classi che ereditano da questa class base o solo il tipo da cui eredita (ogni sottoclass ha la propria copia del campo static dalla class base abstract )?

Il nome ‘sr’ non esiste nel contesto corrente

Stavo seguendo un esempio dal sito microsoft per la lettura dal file di testo. Dicono di farlo in questo modo: class Test { public static void Main() { try { using (StreamReader sr = new StreamReader(“TestFile.txt”)); { String line = sr.ReadToEnd(); Console.WriteLine(line); } } catch (Exception e) { Console.WriteLine(“The file could not be read:”); Console.WriteLine(e.Message); […]

È sbagliato utilizzare le parentesi per scopi di ambito variabile?

A volte uso le parentesi per isolare un blocco di codice per evitare di utilizzare per errore una variabile in un secondo momento. Ad esempio, quando inserisco diversi SqlCommand nello stesso metodo, faccio spesso copia-incolla dei blocchi di codice, terminando mescolando i nomi ed eseguendo il doppio di alcuni comandi. L’aggiunta di parentesi graffe aiuta […]

T-SQL: restituire la nuova id quadro INSERT a C #

Sto mettendo i valori in SQL Server utilizzando una stored procedure. La procedura aggiungerà un ID alla riga che viene aggiunta. Devo riportare questo ID al mio codice. Attualmente posso ottenere l’ID di output nella finestra OUTPUT di Visual Studio, ma non riesco a catturarlo nel mio codice. Ecco una versione riassuntiva del proc: SQL […]

Portare e come restringerlo usando VB.Net

Se voglio restringere l’ambito di una variabile in C #, posso introdurre altre parentesi, ad esempio: class Program { static void Main(string[] args) { myClass x = new myClass(); x.MyProperty = 1000; Console.WriteLine(“x = ” + x.MyProperty); { myClass y = new myClass(); y.MyProperty = 2000; Console.WriteLine(“y = ” + y.MyProperty); } myClass y2 = […]