You can use clang in vim. https://github.com/Valloric/YouCompleteMe
I'm well aware. The folks who write Xcode have spent a significantly greater amount of time making their code completion put exactly what I want at my fingertips at exactly the right time.
The difference is significant.
Or, for that matter, C++. You can write C++ in Vim, but I sure wouldn't. Especially with clang-driven features in Xcode being so helpful.