2016-04-15 13 views
6

Per un progetto multipiattaforma su iOS, Android e Windows ho originariamente scritto alcune classi sottostanti in C++. Da quello che capisco comunque, dovrò scrivere un wrapper C obbiettivo per consentire al progetto rapido di iPhone di funzionare in xcode. Avrebbe più senso allora che semplicemente riscrivo tutto il framework originale in C o semplicemente lo avvolgendo in C fosse una soluzione migliore. Nessun problema in entrambi i casi sta solo cercando di determinare il modo migliore per mantenere il codice valido.C o C++ per lo sviluppo mobile multipiattaforma?

Inoltre, suggerire di utilizzare un SDK di sviluppo per dispositivi mobili multipiattaforma non è utile.

+0

C di solito è meno doloroso, quando si prendono di mira più piattaforme (non correlate), usando più diversi toolchain e librerie di runtime. Anche se il supporto per C++ è abbastanza maturo per tutte e 3 le piattaforme, ti imbatterai in sottili differenze e complessità in particolare con le nuove funzionalità (thread, ecc.). Ti consiglio comunque di riscrivere tutto da zero, piuttosto che avvolgere il tuo codice C++ dietro un'interfaccia C. Ma questa domanda è abbastanza basata sull'opinione pubblica e potrebbe essere chiusa come fuori tema. – IInspectable

risposta

4

Consiglierei di scrivere in C++ 11. È più moderno, ha più supporto online e puoi anche compilare tutto con Cmake. Ci sono molti strumenti là fuori per aiutarti con questo. La mia azienda sta usando questo per sviluppare un quadro che raccoglie sulle seguenti piattaforme:

iOS, Mac OS X, Android (ARM, x86, x64), Windows (x86, x64), Linux (x86, x64)

Puoi anche trovare uno strumento per aiutarti con i toolchain multipiattaforma, in modo che il codice che compilerai sia facilmente pronto per più piattaforme: https://github.com/ruslo/polly

Problemi correlati