The truth is, most game developers do not make their own engines, or at least are not in charge of making their own engines. Often, a big developer will use the same engine for several studios. Examples of these are Bethesda, Blizzard, and Valve. They have used variations of the same engines for several games now. What really changes from game to game is usually more along the lines of art, mechanics, and story.
The game engines are really the core of any video game, though. And this is where the coding really begins. If you've ever even opened up any of Bethesda's construction sets, you might realize that their entire game was probably produced using a similar piece of software designed for their engine. But this is already building on a completed engine.
C++ is used for its versatility while remaining efficient, really. I know of very few programs I've written that couldn't have been in some way ported to C++. But at the same time it's old enough to retain the speed of being only two steps above Assembler (C being in the middle). It also retains portability that way. Windows, Mac, and Linux all easily support it. So this is why it is used in game engines.
But I also disagree with the statement you bring up with regards to game development as a whole. You do not need to know C++ to be able to work in video game development. What you do need to know is some form of coding (and C++ is a good one to know for a background). But if you are working on creating a new game engine, I'd agree that it is indispensable.