I have been using the C++ SDK. My day-job requires me to primarily write in C++, so I am pretty comfortable with the language; however, before trying out Leap in C++, I tried Java.
I agree with Komposten -- the performance is better with C++. Java syntax was uncomfortable to use (probably due to my own inexperience) but it was super easy to set up.
C++, on the other hand, was a lot of trouble to get working. Visual Studio is a powerhouse IDE, and the problem with powerful IDEs that use powerful languages is that it can make it very difficult to compile simple programs. In the end, I built my C++ program off of the Sample C++ example provided in the SDK because I had no clue how to properly set up the Leap dependencies with a blank Visual Studio project. Now that I have a working, stable, C++ program, I much prefer it over my old Java program, but sometimes it simply boils down to your own personal preference.
Finally, Leap's C++ syntax is hard for me to work with. I think 70% of this issue, perhaps, is because my company enforces a specific standard for syntax, and Leap, of course, does not. Still, I am of the opinion that the C++ SDK has poor syntax because it does not use Hungarian notation; yet does this issue persist the Java side? I am not familiar enough with Java to say whether or not they use good syntax.