Со следующим кодом
void TestF(const double ** testv){;}
void callTest(){
double** test;
TestF(test);
}
Я получаю это:
'TestF' : cannot convert parameter 1 from 'double **' to 'const double **'
Я не понимаю, почему.
Почему test
не может быть беззвучно нажата на const double**
?
Почему я должен делать это явно? Я знаю, что
TestF(const_cast<const double**>(test))
делает мой код правильным, но я считаю, что это не нужно.
Есть ли какие-то ключевые понятия о const, которые мне не хватает?