games like plant vs zombies, temple run and angrybirds for phones in the future.
If you aim to develop for phones, then unfortunately C++ and DirectX is not an ideal choice since you will only ever be able to target the windows phone and you can only use native languages on it if you have a pretty expensive license agreement (and probably a dev kit).
With an Objective-C or Java shim, it is very easy to program in OpenGL and C++ on iOS and Android (but not Windows Phone) if you want to go the native route.
Otherwise I think the only solution (other than things like Unity) is MonoTouch and MonoGame which I think can work on iOS, Android and Windows Phone.
... But not Blackberry ;)