I want to know how widely C++ is used by companies for game development ? Are there any other areas where C++ is popularly used apart from game development?
If Yes , then what are the frameworks or tools with the help of which it is implemented?
Without knowing proprietary code from games, it is hard to find out which language(s) they were written in most of the time. However, many big-name engines, like UE, CryEngine, etc. are written in C/C++. Also, for indy games, SDL is a common starting point, and it is written in C++. As such, I'd say that the foundation for the most part of games out there is most likely C or C++.
That's just half the truth, though! Many games are split between the engine code and the actual game code. Just think about UE4's Blueprint system, which is mainly useful for rapid prototyping, but I bet that a lot of low-prio logic is never ever translated. RPGMaker offers Ruby as a scripting language, but RPGMaker itself is most likely not created in Ruby. Unity offered C# and JS for the game logic, until they recently dropped JS (which is a shame imho). So the actual logic is most likely written in a different language most of the time. That allows for hot-reloading of code, which is great for prototyping and 3rd party content (modding).
Apart from game development, most hardware-related stuff, which is not embedded, is using C++. That's for examples Kernels (NT, Linux,...), compilers, VMs, interpreters (GCC, LLVM, Chakra, etc.) and so on. I think, that there is hardly any software environment, which does not use C or C++ at some point. One of the big exceptions might be Redox, an OS plus tool suite entirely written in Rust. Crazy people, but I am so excited to actually use Redox instead of Linux one day!
What frameworks are used to... ehh, you know, C++ has been around for a day or two, so there is quite a number of frameworks available. Also, as you can see, C++ can be used for anything. Literally ANYTHING, because you can even compile it to WASM and plug it into your website nowadays. So you should first find out what problem you try to solve and then search for a framework or library which solved said problem. For example: Want to do computer vision? OpenCV might be a good library for starters
Marco Alka
Software Engineer, Technical Consultant & Mentor
Without knowing proprietary code from games, it is hard to find out which language(s) they were written in most of the time. However, many big-name engines, like UE, CryEngine, etc. are written in C/C++. Also, for indy games, SDL is a common starting point, and it is written in C++. As such, I'd say that the foundation for the most part of games out there is most likely C or C++.
That's just half the truth, though! Many games are split between the engine code and the actual game code. Just think about UE4's Blueprint system, which is mainly useful for rapid prototyping, but I bet that a lot of low-prio logic is never ever translated. RPGMaker offers Ruby as a scripting language, but RPGMaker itself is most likely not created in Ruby. Unity offered C# and JS for the game logic, until they recently dropped JS (which is a shame imho). So the actual logic is most likely written in a different language most of the time. That allows for hot-reloading of code, which is great for prototyping and 3rd party content (modding).
Apart from game development, most hardware-related stuff, which is not embedded, is using C++. That's for examples Kernels (NT, Linux,...), compilers, VMs, interpreters (GCC, LLVM, Chakra, etc.) and so on. I think, that there is hardly any software environment, which does not use C or C++ at some point. One of the big exceptions might be Redox, an OS plus tool suite entirely written in Rust. Crazy people, but I am so excited to actually use Redox instead of Linux one day!
What frameworks are used to... ehh, you know, C++ has been around for a day or two, so there is quite a number of frameworks available. Also, as you can see, C++ can be used for anything. Literally ANYTHING, because you can even compile it to WASM and plug it into your website nowadays. So you should first find out what problem you try to solve and then search for a framework or library which solved said problem. For example: Want to do computer vision? OpenCV might be a good library for starters