Oppure

Loading
26/12/09 14:19
secretfabios
Ho imparato abbastanza bene il VB.NET e ora ke mi ritrovo il C# che mi sembra molto facile.
Ora mi chiedo...ke differenza c'è con VB.net...ha funzioni in piu?
aaa
26/12/09 15:44
manvb.net
Sostanzialmente no! L'unica funzionalità che ha in più è la possibilità di scrivere codice unsafe, che viene eseguito via JIT. Questo rende possibile l'uso dei puntatori.
aaa
26/12/09 22:40
ilmettiu
. . . Giusto per curiosità, puoi spiegare un pochino l'ultima frase? :-)
aaa
27/12/09 0:07
manvb.net
Pratiacamente, grazie alla compilazione JIT, che trasforma il codice managed in codice nativo a runtime, diventa possibile usare i puntatori(come in c++).

Per chi non sapesse cos'è un puntatore: it.wikipedia.org/wiki/…
aaa
27/12/09 9:58
secretfabios
Adesso però mi sorge un dubbio...
In VB.NET per prendere un numero da una textbox bastava fare cosi...
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim n As Integer
        n = TextBox1.Text
        MsgBox(n)
    End Sub


Mentre se faccio la stessa cosa in C# non va...
        private void button1_Click(object sender, EventArgs e)
        {
            Int16 ciao;
            string cia;
            cia = textBox1.Text;
            ciao = Int16.Parse(cia);
            MessageBox.Show(ciao);
        }

aaa
27/12/09 11:50
manvb.net
Questo succede per due motivi:

1) Hai Option Strict Off, cosa sconsigliatissima perche tenerlo ad off rallenta di molot il programma. Option Strict Off ti permette di evitare di dove fare i cast di tipi(.Parse, ctype, ecc...).

2) Stai usando funzioni della Microsoft.VisualBasic (vedi MsgBox), anche queste sconsigliate perchè sono obsolete. C# non importa nnativamente la Microsoft.VisualBasic.


C'è un altra differenza che potresti notare: l'assenza del namespace My in C#.
aaa
28/12/09 9:41
Il Totem
Inoltre VB possiede CType, che è un operatore di casting più intelligente di Parse e ToX.
In C# non esistono le variabili locali statiche (lo scopo per cui veniva usato "static" in C, che adesso è stato modificato per adattarsi agli oggetti).
String non espone la proprietà Chars.
Come già detto, non esiste My.
aaa
28/12/09 10:57
secretfabios
Grazie molto utili:k:
aaa