C++ has remained the industry standard for game engines much because of its features..
The primary reasons are(afaik):
Technical reasons - High performance, native runtime, portibility, negligible latency, and more recently concurrency.
Socio-Technical reasons - Availability of Libraries, Legecy stuff, most scripting languages on games have a good C api (ex lua), Good IDEs and most recently improved Development time.(C++11)
Social reasons - People know C++, Licenced technologies, and battle proven.
Does this make C++ for game engines indispensible, so long we have game consoles? Would not, the above features make me implement new graphics technology in C++ only?
Edit: Will learning C++ garuntee me a job as a game engine dev In the future? I want to master every aspect of the language, but I already know C# and python. Should I allocate my time learning C++. I want to be a game engine developer.