View Full Version : [Visual c++] ci sono tutorial?
Dr Nick Riviera
28-05-2007, 16:26
Scusate, ho una infarinatura di base sulla programma zione di semplici "programmi" in c++, ho seguito alcune guide ed ho letto alcune dispense.. però quello che mi interessava era imparare a fare applicazioni in visual c++ in modo in modo che abbiano un interfaccia grafica per windows.. in rete ho trovato quasi niente se non roba di tipo helloword.. a me interesserebbe sapere come creare un'applicazione leggermente più complessa, del tipo inserire una o più textbox dove far mettere ad esempio un valore dall'utente (stringa o numero) e poi far apparire in una textbox di uscita il risultato.. ecc..
Ci sono delle guide o tutorial a riguardo, anche perchè con il visual c++ c'è l'introduzione delle api e quindi per uno che come me non è ferratissimo in materia di programmazione le cose si complicanop un po' di più.. almeno apparentemente..
Grazie a tutti..
usare direttamente le API Win32 per creare l'interfaccia grafica te lo sconsiglio: diventi vecchio solo per aprire uno straccio di finestra vuota :old:
piuttosto dovresti usare un toolkit, la qual cosa tra l'altro ti semplificherebbe anche la vita in caso di porting se mai ne avessi bisogno. un toolkit piuttosto molto strapheego sarebbe wxWidgets: http://www.wxwidgets.org/
Dr Nick Riviera
28-05-2007, 20:54
:eek: scusa ma non ho idea di cosa sia... :eek:
Sono un novello della programmazione.. diciamo che ho cominciato un po' tardi.. :doh: Ma utilizzando ad esempio Microsoft Visual c++.. le API non le mette da solo?! :confused:
^TiGeRShArK^
28-05-2007, 21:11
si puoi usare l'editor grafico di visual studio..
però sinceramente ti sconsiglio di iniziare con il Visual C++..
Visual C# mi sa che è + semplice..
quanto meno non devi sbatterti a trovare i memory leak :asd:
(a proposito.. possibile ke in firefox ancora non siano riusciti ad eliminarlo definitivamente? :p)
Dr Nick Riviera
29-05-2007, 16:21
si puoi usare l'editor grafico di visual studio..
però sinceramente ti sconsiglio di iniziare con il Visual C++..
Visual C# mi sa che è + semplice..
quanto meno non devi sbatterti a trovare i memory leak :asd:
(a proposito.. possibile ke in firefox ancora non siano riusciti ad eliminarlo definitivamente? :p)
Non vorrei mettere troppa carne al fuoco.. ho installato MS Visual c++.. non so se mi conviene toglierlo e passare al visual c# di cui non ho mai sentito parlare (non he di c++ ci capisca poi tantissimo, ma il secondo non l'ho proprio mai visto).. poi se mi dici che è decisamente più facile allora un pensierino potrei anche farcelo..
quanto meno non devi sbatterti a trovare i memory leak :asd: MFC te li segnala automaticamente, con tanto di path dei sorgenti e numeri di linea; e mi sa che per gli oggetti ti fa pure il dump.
Sono un novello della programmazione.. diciamo che ho cominciato un po' tardi.. :doh: Ma utilizzando ad esempio Microsoft Visual c++.. le API non le mette da solo?! :confused: in effetti se usi MFC le cose si semplificano moltissimo, ma MFC è per l'appunto un toolkit :D
inoltre devi avere l'edizione Enterprise, non l'Express, perché l'Express non supporta i vari Wizard integrati con MFC che generano il codice automatico. senza i wizard dovrai scrivere tutto a mano, e l'uso di MFC ti risparmierà pochino.
Non vorrei mettere troppa carne al fuoco.. ho installato MS Visual c++.. non so se mi conviene toglierlo e passare al visual c# di cui non ho mai sentito parlare (non he di c++ ci capisca poi tantissimo, ma il secondo non l'ho proprio mai visto).. poi se mi dici che è decisamente più facile allora un pensierino potrei anche farcelo.. con Visual C# ci metti veramente un attimo a partire e a produrre qualcosa, anche grazie al RAD. ti dico subito che scegliere un linguaggio di programmazione in base alle proprie esigenze è una delle cose più difficili della programmazione. devi essere tu a fare la scelta, qui ti si può solo dire quali sono (da un punto di vista oggettivo) le caratteristiche dell'uno o dell'altro. diffida da chi ti parte in quarta e spara "USA JAVA CHE RULLA DI BRUTTO": le religioni in informatica non esistono. :O
rispetto al C# il C++ è indubbiamente più potente, ma è una potenza che nel 90% dei casi non serve a nulla; nel senso che è inutile poter manovrare l'aritmetica dei puntatori quando in C# semplicemente te ne sbatti (passi tutto col classico sistema alla Java della copia di riferimento) e ti affidi ad un garbage collector. però ci sono dei casi in cui poter manovrare i puntatori è necessario (vedi ad esempio un debugger o un device driver).
inoltre tra C# e C++ differisce anche il tipo di binari prodotti: in C# produci bytecode (codice macchina per una macchina virtuale che si chiama virtual machine, la quale prima di lanciare il programma lo deve convertire in codice macchina x86), mentre in C++ produci direttamente codice macchina per la macchina target. ti starai chiedendo qual è allora lo scopo del bytecode: lo scopo è la portabilità a livello binario, una cosa importantissima se non fosse che Microsoft produce il suo framework .NET (cioè la virtual machine del caso) solamente per la sua piattaforma Windows :D
per vedere in azione l'utilità del bytecode devi prendere come esempio Java: un programma Java gira ovunque così com'è.
Dr Nick Riviera
29-05-2007, 21:31
Grazie 1000 71104 eheh..
Non ho capito una cosa però.. ossia se col C# è necessario installare il framework .NET o no..
Ti ringrazio per le spiegazioni che mi hai dato,.. vedo se riesco a recuperare il prog per lavorare col c#.. nella speranza di trovare anche qualche tut da seguire per imparare..
Tanto ora come ora non mi interessano cose difficili ma semplici applicazioni (anche se per me tanto semplici non sono).. quindi se mi dici che il c# è decisamente più semplice.. bhè.. siete in 2 su 2 ad avermelo detto qui per cui mi fido.. :ciapet:
Thx ancora..
Dr Nick Riviera
29-05-2007, 21:35
in effetti se usi MFC le cose si semplificano moltissimo, ma MFC è per l'appunto un toolkit :D
inoltre devi avere l'edizione Enterprise, non l'Express, perché l'Express non supporta i vari Wizard integrati con MFC che generano il codice automatico. senza i wizard dovrai scrivere tutto a mano, e l'uso di MFC ti risparmierà pochino.
Dimenticavo.. dovrei avere la versione professional...
Dr Nick Riviera
30-05-2007, 10:12
La tentazione è stata forte. ho installato il M. Visual C# 2005 e grazie ad un tut sono riuscto a creare una prima applicazione con interfaccia per windows.. L'unica cosa sono tutti i vari comandi, le classi, ecc.. che sono moltissimi (es: Convert.) e dovrei capire quali sono quelle principali o comunque le più utilizzate..
PS: Il prog che ho installato è in inglese, però ho visto che esiste in italiano.. non è che c'è una patch ita? Thx..
La tentazione è stata forte. ho installato il M. Visual C# 2005 e grazie ad un tut sono riuscto a creare una prima applicazione con interfaccia per windows.. L'unica cosa sono tutti i vari comandi, le classi, ecc.. che sono moltissimi (es: Convert.) e dovrei capire quali sono quelle principali o comunque le più utilizzate..
PS: Il prog che ho installato è in inglese, però ho visto che esiste in italiano.. non è che c'è una patch ita? Thx..
Ricorda se sviluppi in C# (e questo vale per qualsiasi linguaggio .NET), i computer dove questo programma verrà eseguito deve necessariamente avere installato il .NET Framework altrimenti non funzionerà nulla.
Dr Nick Riviera
30-05-2007, 13:54
Ricorda se sviluppi in C# (e questo vale per qualsiasi linguaggio .NET), i computer dove questo programma verrà eseguito deve necessariamente avere installato il .NET Framework altrimenti non funzionerà nulla.
Eh.. questa effettivamente è una pecca.. ci vorrebbe che nelle prossime versioni di windows il framework sia già installato..
RaouL_BennetH
30-05-2007, 14:13
Eh.. questa effettivamente è una pecca.. ci vorrebbe che nelle prossime versioni di windows il framework sia già installato..
E' la stessa cosa che avviene con la virtual machine di java. Se devi installare un programma java su qualsiasi computer e la vm non c'è, mi sa che non parte :)
Per quanto riguarda il C#, per fortuna ha molte similitudini con Java, quindi un eventuale passaggio a Java non sarà poi traumatico.
Inoltre, anche la portabilità del C# inizia a vedersi tramite lo splendido lavoro fatto dal team di Mono, un progetto completamente opensource che ti permette di eseguire codice C# anche su altre piattaforme (purchè non sia legato ai Windows Forms, almeno a quelli del .net 2.0).
Inoltre, un piccolo consiglio che ti do da niubbo a niubbo (anche io ho iniziato da poco):
Anzichè usare la versione limitata di visual studio 2005 express per il C#, scaricati un altro IDE completamente opensource e validissimo per windows che è:
sharpdevelop e lo trovi qui:
http://www.icsharpcode.net/OpenSource/SD/Download/
E se non erro puoi anche scaricare del tutto gratuitamente in formato elettronico l'ottimo libro:
Dissecting a C# application sempre dallo stesso sito.
RaouL.
Dimenticavo.. dovrei avere la versione professional... non l'ho provata; io a parte l'edizione Express della 2005 ho una antidiluviana versione 6.0 Enterprise... può essere che adesso la nomenclatura sia diventata Professional e non più Enterprise. comunque guarda se esiste il template per creare un'applicazione Win32 basata su MFC.
device driver
http://research.sun.com/techrep/2006/abstract-156.html
:Prrr: :D
http://research.sun.com/techrep/2006/abstract-156.html
:Prrr: :D quanti sono i sistemi operativi del mondo? :O
quanti di questi supportano Java nel kernel? :O :O
soluzioni: dozzine; 1
intendiamoci eh, a me fa piacere che l'universo si stia evolvendo e che stia diventando possibile utilizzare frameworks d'alto livello anche lavorando a basso livello :D
ma purtroppo è una cosa che vedremo concretizzata e diffusa tra mooolto tempo.
Lo scopo della ricerca è quello di dimostrare che alcune teorie sono panzane intergalattiche. Una è quella "non si possono fare driver con piattaforme managed". Si possono fare. Non si fanno perchè, come è noto, l'uomo è scimmia e gli piace darsi le bananate sulle p... :D
^TiGeRShArK^
31-05-2007, 00:13
Lo scopo della ricerca è quello di dimostrare che alcune teorie sono panzane intergalattiche. Una è quella "non si possono fare driver con piattaforme managed". Si possono fare. Non si fanno perchè, come è noto, l'uomo è scimmia e gli piace darsi le bananate sulle p... :D
:rotfl::rotfl::rotfl::rotfl::rotfl:
Dr Nick Riviera
31-05-2007, 14:17
Grazie 1000 dei consigli raga.. vedo di prendere un po' familiarità con le funzioni del C#, magari per i controlli di base, e poi vedrò di approfondire.. tornerò in questo topic, anche se a sto punto il titolo andrebbe cambiato perchè dal visual c++ siamo passati completamente al visual c#..
:fagiano: :D
Una è quella "non si possono fare driver con piattaforme managed". e chi l'ha mai detto scusa :O
io ricordo di averlo detto tempo fa, ma era chiaramente relativo all'epoca attuale (e cambia tutto): oggi non si possono creare device drivers con piattaforme managed, ma è chiaro che nel caso generale l'affermazione è falsissima perché non c'è nulla che lo impedisca. oggidì girano delle voci circa il futuro Windows Vienna: dicono che sarà un sistema operativo interamente basato su dotnet, la qual cosa (pur essendo una voce molto imprecisa) mi suggerisce che sarà possibile realizzare kernel drivers e persino servizi in C# (fighissimo :eek: ). ma visto il ritardo di Vista e mettendolo in rapporto al ritardo (molto minore) del precedente XP, direi che il ritardo di Vienna sarà qualcosa che verrà ricordato nella storia come la più lunga stasi dell'intero settore IT :D
(sempre che la gente, contrariata dal TC, non cerchi di passare alle alternative, come ReactOS :O)
Non era rivolto a te specificamente. A me quella balla a suo tempo la rifilarono. Sono suggestioni, se ogni tanto non lo si dice finisce che qualuno ci crede.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.