For a type
T, C++ allows an implicit conversion from
const T*. This is safe and you most likely used it hundreds of times before (think method calls with
const pointer parameters). But if you try it with a double pointer (e.g. implicitly converting
const T**) it will fail.
gcc for example will tell you something in the lines of:
error: invalid conversion from 'Test**' to 'const Test**'
Have you ever wandered why this is unsafe and wrong and so reported as a compile time error? Continue reading No implicit conversion from ‘T **’ to ‘const T **’