Gmod has a scripting api knows as lua which you can use to access pretty much anything within the game with ease. C++ offers more flexibility in terms of hooking functions and memory manipulation that the lua api doesn't contain which results in you having a lot more control over the game because you can modify anything in memory. The downside is it's a lot more complicated. Some hacks are written in lua for gmod because of the ease of the scripting language for the retarded script kiddies who can't hook CreateInterface to save their fucking lives, find the OEP of a vmprotected program. They don't bother to learn anything related to reverse engineering and actual coding and usually start pasting shit.