Just stumbled on to this problem/fix while writing some C++ code for my CS courses…
warning: deprecated conversion from string constant to ‘char*’
I hadn’t really thought about this much, as previous versions of g++ (such as the 3.4.3 version we’re using on our university systems) never complained about this issue, but g++ 4.2.3 does. The fix, as I found from multiple posts around the web, is to change all function arguments that will be expected to take a string constant from “char *” to “const char *”. For example:
Function Call:
class.someFunction("");
Original Function Prototype:
void class::someFunction(char *);
Updated Function Prototype:
void class::someFunction(const char *);
I’m somewhat new to C++ (OSU taught Java and I code in C# for the day job), so please give me a bit of slack on this one if you’re a seasoned pro. 😉
As always, comments and questions are welcome via my comment box. Thanks for reading!