The beauty of C++ is that it is a general purpose programming language. This makes it a fit for any platform. Just know your tools well and choose what fits your project.
Usually C++ is used for developing machine learning, image, audio, speech, language processing core libraries that you may connect to on a native mobile application using a wrapper.
In Android for example, one would use NDK to call C++ libraries.
On iOS, you may use C++ binaries directly in your project. Another approach is to link to headers written in C++ in your code, but I read it should be done with caution to avoid performance penalties.
Cacoa & Cacoa Touch are a native API for Mac OS and iOS that could also help in coordinating interaction between your C++ & iOS mobile code whether it is in objective C++ or Swift.
However, for the new Swift iOS development, you will have to use a wrapper again just like with Android.
Some libraries have a framework for iOS such as OpenCV - a main library for computer vision - and in such a case you may not need use C++.
You don’t seem to have trouble developing Windows Phone applications in C++, since Microsoft takes care of such.
A similar arguments holds for generic Symbian platforms:
Microsoft takes it even further and allows you to develop Cross Platformmobile applications using Visual C++
This approach is similar to Qt Framework in C++
You may also consider CX a dialect of C++ for Windows Apps development
As a bonus you may give a try to Cider library in C++
Having that many tools at hand you may pick the right one depending on what you’re trying to achieve since this is a generic question. The project at hand dictates the right approach.
C++ is a smart language for smart people
No comments:
Post a Comment