10
votes

"Conversion invalide de certains_type ** sur const quelque_type **"

J'ai une fonction qui nécessite const quelque_type ** comme argument ( one_type est une structure, et la fonction nécessite un pointeur sur un tableau de ce type ). J'ai déclaré une variable locale de type quelque_type * et l'initialisée. Ensuite, j'appelle la fonction comme f (& certains_array) et le compilateur (GCC) indique: xxx

Quel est le problème ici? Pourquoi ne puis-je pas convertir une variable en const?


0 commentaires

3 Réponses :



1
votes

Vous devez probablement spécifier un certain contexte, par exemple, l'argument est adopté des données de (ou les deux?) La fonction?

Essayez de rendre votre variable const aussi: P>

some_type const *some_array = ....;


2 commentaires

"Non" :) ( Parasht.com/c++- FAQ-Lite / const-correctionness.html # FAQ-18.17 )


Hein. Ceci a été marqué comme la réponse acceptée, même si cela ne répond pas à la question de "pourquoi" du tout? = (



1
votes

Vous avez quelques options pour vous déplacer ce que Jamesdlin a décrit dans sa réponse.

Vous pouvez utiliser une variable intermédiaire. xxx

Vous pouvez modifier les paramètres de < code> f . xxx


0 commentaires