1. Project size. It's usually easier to get an IDE to build your project, parse any errors, and show the right lines of code in a debugger, than it is to get a good compile/fix/debug cycle setup in Emacs.
2. Language complexity. There's a lot of variance between languages on what your text editor will support in terms of parsing, symbolics browsing (e.g. a class browser, function popup, etc.), and what you need for that language.
Compared to how well you're coddled in something like Netbeans/eclipse, it's tough to be satisfied in Emacs. They'll search the entire classpath (not just the classes you've written) and find every match that could be usable in the given situation (according to your import declarations), using your project definition for class file resolution.
On C++, it's harder when you start using templates. Seems only systems with tightly-integrated compilers do a decent job here.
1. Project size. It's usually easier to get an IDE to build your project, parse any errors, and show the right lines of code in a debugger, than it is to get a good compile/fix/debug cycle setup in Emacs.
2. Language complexity. There's a lot of variance between languages on what your text editor will support in terms of parsing, symbolics browsing (e.g. a class browser, function popup, etc.), and what you need for that language.