Sto appena iniziando il mio primo progetto C++. Sto usando Visual Studio 2008. È un'applicazione Windows a modulo singolo che accede a un paio di database e avvia una transazione WebSphere MQ. Praticamente capisco le differenze tra ATL, MFC, Win32 (sono un po 'confuso su quello in realtà) e CLR, ma non riesco a capire come dovrei scegliere.Come decidere se utilizzare ATL, MFC, Win32 o CLR per un nuovo progetto C++?
Uno o più di questi sono solo lì per compatibilità con le versioni precedenti?
È CLR a bad idea?
Qualsiasi suggerimento apprezzato.
Modifica: Ho scelto C++ per questo progetto per motivi per cui non sono entrato nel post, che non sono del tutto tecnici. Quindi, assumendo C++ è l'unica opzione/migliore, quale dovrei scegliere?
Buona domanda. Fa parte di un progetto più ampio che include alcuni altri pezzi che devono essere in C++ per ragioni legate alla legacy e al vendor. Questa parte non * deve * essere in C++ ma poiché ci sono altre parti che fanno, e poiché questa parte è relativamente piccola, stavo progettando di fare tutto nella stessa lingua. –
C++/CLI (/ clr) può essere molto vicino a C#, se ti piace lavorare in C#, ma vuoi/devi usare C++. La differenza principale è rappresentata da alcune cose di sintassi minore e dal tentativo di evitare l'uso di C++ standard invece delle chiamate CLI. Non c'è davvero alcun motivo per evitarlo. –
E questo non è necessariamente un cattivo pensiero. Tuttavia, continuo a pensare che la cosa migliore da fare sia C# e P/Invoke nelle tue librerie esistenti. Se eri * già * un guru MFC, e questa era solo una piccola aggiunta al tuo progetto, allora sì, probabilmente avrebbe senso continuare in C++. Anche se in questo caso potrebbe essere una buona occasione per ritagliarsi un po 'di "tempo di pratica" con .NET framework – Clyde