C++ e C#

giovedì 13 luglio 2006 - 11.34

fisk Profilo | Newbie

Salve,
sono nuovo di questo Forum e non troppo esperto..
Volevo chiedere se qualcuno può spiegarmi quali sono le principali differenze fra C++ e C#
(io conosco solo il C++).

PS: quale libro mi consigliate per studiare Visual C++ (in particolare Windows Form e MFC).

Grazie
ciao!

fisk

Brainkiller Profilo | Guru

>sono nuovo di questo Forum e non troppo esperto..
>Volevo chiedere se qualcuno può spiegarmi quali sono le principali
>differenze fra C++ e C#
>(io conosco solo il C++).

Ciao,
ci sono alcune differenze importanti. Secondo me la più importante è il diverso livello di produttività che si può ottenere un linguaggio oppure l'altro. Esempio, in C++ il Memory Management è delegato al programmatore. In C# è gestito quasi totalmente dal Framework. E' una notevole differenza avere a che fare con allocazioni, puntatori, ecc. oppure no.
Questa una cosa positiva.

Una negativa invece la differenza di prestazioni. Con C# c'è un consumo ben più elevato di memoria e prestazioni in molti casi più basse rispetto al C++. Però insomma, dipende cosa devi fare, se applicazioni realtime, videogames, oppure applicazioni a finestra. Nel primo caso meglio C++, nel secondo meglio C#.

Si potrebbe discutere per ore.

Windows Forms sono di .NET, MFC di Visual C++.
Relativamente ai libri, fai un giro su un qualsiasi Store di Libri e digita MFC.

Ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

fisk Profilo | Newbie

Grazie per la pronta risposta!
Qualche precisazione:
ma al di là della grossa diferenza che mi hai detto, C++ e C# hanno la stessa sintassi e le stesse parole chiave?

e poi: è possibile scrivere un programma usando entrambi i linguaggi ?

infine: quando creo un progetto windows form application con Visual Studio, il linguaggio con cui vengono preimplementati i file è C++ o C# ?

grazie mille.
ciao!


fisk

D0X Profilo | Newbie

>Grazie per la pronta risposta!
>Qualche precisazione:
>ma al di là della grossa diferenza che mi hai detto, C++ e C#
>hanno la stessa sintassi e le stesse parole chiave?

No. La sintassi C++ è C like, mentre la sintassi C# è Java Like anche se è una descrizione approssimativa. In linea di principio la sintassi è differente a partire dai namespace di C# piuttosto che gli include e similari in C++.
>
>e poi: è possibile scrivere un programma usando entrambi i linguaggi
>?

Se intendi "usare entrambi i linguaggi nello stesso programma" la risposta è si se sfrutti le caratteristiche di interoperabilità del framework .NET.

>
>infine: quando creo un progetto windows form application con
>Visual Studio, il linguaggio con cui vengono preimplementati
>i file è C++ o C# ?
>

Non è chiara la tua frase :D. Una differenza fondamentale nell'ambiente .NET fra C# e C++ è che C# ha necessità sempre e comunque di avere a disposizione il framework per usufruire dei servizi del Framework come la GC e le traduzioni on-demand del JIT dall'IL a codice nativo.
Al contrario, per C++ puoi decidere se la tua applicazione sarà managed dal framework o unmanaged. Nel secondo caso non avrai bisogno, quanto meno, del framework runtime installato sulla macchina per far girare la tua applicazione C++. Per entrambi i linguaggi .NET genera i cosiddetti assembly che poi sono eseguibili (gestiti o meno dal runtime (CLR) in base alla diversità descritta precedentemente....).

Ti consiglio di visitare la pagina di un mio quasi "omonimo" :D Dove c'è un bel documento che descrive il framework .NET.

http://necrosoft.altervista.org/index.php?mod=03_Docs

Ciao!

>grazie mille.
>ciao!
>
>
>fisk
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5