2010-12-13 55 views
2

J'ai des entiers que je mets dans une matrice afin de les utiliser dans une fonction spécifique dans openCV. La matrice que j'ai créée est seulement cvMat et je veux utiliser cette matrice dans la fonction. Je reçois une erreur:Entiers à const C++, c

error: cannot convert ‘CvMat’ to ‘const CvMat*’

Alors, comment puis-je convertir ces ints à Const afin de créer cette matrice comme const CvMat i.e. comment changer CvMat à const CvMat?

+1

Vous passez par la valeur où vous devriez passer un pointeur. –

+0

MERCI BEAUCOUP, IL EST RÉSOLU – Mario

Répondre

4

" error: cannot convert ‘CvMat’ to ‘const CvMat*’ "

La chose importante est l'astérisque à la fin. Cela signifie que la fonction que vous appelez veut un pointeur. vous pouvez simplement prendre l'adresse de votre matrice et passer cela, à la place, il faut somefunction(&myMatrix). Ne vous inquiétez pas pour le const. Un pointeur peut toujours être implicitement converti en pointeur const.

+0

OH MON DIEU, IL EST RÉSOLU, MERCI BEAUCOUP DE GARS MERCI – Mario

+3

Vous êtes les bienvenus. Si cela vous a aidé, pensez à accepter ma réponse. vous pourriez également vouloir récupérer la clé de verrouillage des majuscules. – SingleNegationElimination

+0

L'apparence des majuscules est juste pour vous montrer combien j'apprécie – Mario