È possibile utilizzare solo C ++ per creare app iOS? C'è qualche svantaggio in questo? Ho letto da qualche parte che devi usare un mix di obiettivi C e C ++ se vuoi usare C ++ così male.
Aggiungerò un po 'più di colore alla spiegazione fornita da Paul sopra.
Ci sono due aree principali in cui devi interfacciare il tuo c ++ con ObjC per creare un'app funzionale:
È necessario interfacciarsi con il runloop fornito da UIKit per ricevere notifiche di eventi come tocchi e modifiche allo stato delle app.
Per visualizzare il contenuto sullo schermo, devi avvolgere UIKit / CoreAnimation o fornire contenuti tramite l'API EAGL / GLKit (OpenGL ES).
Se si desidera accedere ad altre funzionalità del dispositivo, in genere vengono fornite solo tramite una API ObjC, sebbene a volte siano disponibili anche a un livello inferiore con un'API C (come audio e rubrica).
In generale, tendo a fare la maggior parte dell'app ObjC, ma poi uso C ++ per aiutare l'implementazione efficiente di alcuni sottosistemi. In generale, il moderno ObjC funziona molto bene con il C ++ in quanto entrambi utilizzano internamente Apple.
Per l'interfaccia utente su iOS è necessario l'obiettivo C, per il resto è possibile utilizzare C ++. Se usi o meno C ++ / Obj C e non puro obiettivo C dipende principalmente dalle tue abilità in C ++. Se si è già fluenti in C ++, fare parte dello sviluppo potrebbe ripagare. Se no, andare per puro obj C è probabilmente una scelta migliore. Vedi anche
stackoverflow.com/questions/8759573/utilizing-c -in-IO-e-mac-os-x-applicazioni