Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - VB.NET o C# differenze?
Forum - C# / VB.NET - VB.NET o C# differenze?

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
secretfabios (Normal User)
Rookie


Messaggi: 59
Iscritto: 17/08/2009

Segnala al moderatore
Postato alle 15:19
Sabato, 26/12/2009
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?


Segno zodiacale: Lasagna
PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 16:44
Sabato, 26/12/2009
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.


"E' facile distruggere, la vera sfida è creare!"(cit. me)

"Ricordati chi sei, non permettere a nessuno di cambiarti, non perdere mai te stesso. Farai grandi cose nella vita."(cit. me)

double penetration; //ouch
PM Quote
Avatar
ilmettiu (Ex-Member)
Pro


Messaggi: 88
Iscritto: 17/09/2009

Segnala al moderatore
Postato alle 23:40
Sabato, 26/12/2009
. . . Giusto per curiosità, puoi spiegare un pochino l'ultima frase? :-)


-NO-     Windows 95
-NO-     Windows 98
-NO-     Windows ME
-NO-     Windows XP
-LOL!-   WinXP.ProSP3+Crack+Keygen[Ita].iso
PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 1:07
Domenica, 27/12/2009
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: http://it.wikipedia.org/wiki/Puntatore_%28programmazione%29


"E' facile distruggere, la vera sfida è creare!"(cit. me)

"Ricordati chi sei, non permettere a nessuno di cambiarti, non perdere mai te stesso. Farai grandi cose nella vita."(cit. me)

double penetration; //ouch
PM Quote
Avatar
secretfabios (Normal User)
Rookie


Messaggi: 59
Iscritto: 17/08/2009

Segnala al moderatore
Postato alle 10:58
Domenica, 27/12/2009
Adesso però mi sorge un dubbio...
In VB.NET per prendere un numero da una textbox bastava fare cosi...
Codice sorgente - presumibilmente VB.NET

  1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  2.         Dim n As Integer
  3.         n = TextBox1.Text
  4.         MsgBox(n)
  5.     End Sub



Mentre se faccio la stessa cosa in C# non va...
Codice sorgente - presumibilmente C# / VB.NET

  1. private void button1_Click(object sender, EventArgs e)
  2.         {
  3.             Int16 ciao;
  4.             string cia;
  5.             cia = textBox1.Text;
  6.             ciao = Int16.Parse(cia);
  7.             MessageBox.Show(ciao);
  8.         }




Segno zodiacale: Lasagna
PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 12:50
Domenica, 27/12/2009
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#.


"E' facile distruggere, la vera sfida è creare!"(cit. me)

"Ricordati chi sei, non permettere a nessuno di cambiarti, non perdere mai te stesso. Farai grandi cose nella vita."(cit. me)

double penetration; //ouch
PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 10:41
Lunedì, 28/12/2009
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.


"Infelici sono quelli che hanno tanto cervello da vedere la loro stupidità."
(Fligende Blatter)

"Dubitare di se stessi è il primo segno d'intelligenza."
(Ugo Ojetti)
PM Quote
Avatar
secretfabios (Normal User)
Rookie


Messaggi: 59
Iscritto: 17/08/2009

Segnala al moderatore
Postato alle 11:57
Lunedì, 28/12/2009
Grazie molto utili:k:


Segno zodiacale: Lasagna
PM Quote
Avatar
manvb.net (Member)
Guru


Messaggi: 663
Iscritto: 28/01/2008

Segnala al moderatore
Postato alle 13:07
Lunedì, 28/12/2009
Testo quotato

Postato originariamente da 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.



Beh, CType non è l'equivalente di (tipo) in C#?


"E' facile distruggere, la vera sfida è creare!"(cit. me)

"Ricordati chi sei, non permettere a nessuno di cambiarti, non perdere mai te stesso. Farai grandi cose nella vita."(cit. me)

double penetration; //ouch
PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo