Opencv cv :: waitKey () Rückgabewert

Ich debugge C ++ - Code, der OpenCV unter Ubuntu 14 verwendet, von dem bekannt ist, dass er unter Ubuntu 12 und möglicherweise mit anderen OpenCV-Bibliotheken funktioniert.

Was war vor

int key_pressed = waitKey(0);
cout << "key_pressed " << int(key_pressed) << endl;
switch( key_pressed )
{
    case 27: //esc
    {
        //close all windows and quit
        destroyAllWindows();
    }

    ...

Aber dieser Code funktioniert nicht und in der Ausgabe habe ichkey_pressed 1048603

Dieser Code funktioniert:

char key_pressed = cv::waitKey();
cout << "key_pressed " << int(key_pressed) << endl;
switch( key_pressed )
{
    case 27: //esc
    {
        //close all windows and quit
        destroyAllWindows();
    }

    ...

Dieser Code funktioniert und in der Ausgabe habe ichkey_pressed 27

Was kann ein Grund für ein solches Verhalten sein?

P.S.documentation says that cv :: waitKey () returnint, warum sollten wir es also in @ konvertierchar?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage