I haven't used cscope. Perhaps it's amazing, but the home page suggests that it works for C++ only because it's a bit slack about its parsing of C. So I'm guessing not.
Regarding ctags, it's useful enough, but it doesn't do a great job of things like jumping to the definition of the "flags" part of "p->flags", if you've got lots of structs that have a "flags" in them. Same goes for member functions. It's absolutely no fun trying to find out what something is, and just getting a list of every single thing of that name in your program. Thanks ctags... but I actually know how to use grep. And if I used grep, I'd get a callers list too.
I found ctags workable, but overall disappointing.
"The fuzzy parser supports C, but is flexible enough to be useful for C++ and Java"
I think you might be misinterpreting the wording there. It's called "c"scope because it was initially written for C and C only. The line above is suggesting that it also has support for C++ and Java (because it has a "fuzzy" parser... whatever that means).
Clang should change this pretty soon. They make code analyses much easier (they let you use their parsed data) and enable things like code highlighting, code completion and jump to declaration. A good use of this for vim is YouCompleteMe (https://github.com/Valloric/YouCompleteMe).
Yes. Expect an entire cohort of people who previously scoffed at the value of such things to start embracing it with both hands! (And rightly so, because this stuff is just super useful, and it can be done so much better then ctags, or, god help us more, grep.)
May clang cause people to expect more from their tools.
Regarding ctags, it's useful enough, but it doesn't do a great job of things like jumping to the definition of the "flags" part of "p->flags", if you've got lots of structs that have a "flags" in them. Same goes for member functions. It's absolutely no fun trying to find out what something is, and just getting a list of every single thing of that name in your program. Thanks ctags... but I actually know how to use grep. And if I used grep, I'd get a callers list too.
I found ctags workable, but overall disappointing.