2010-05-29 3 views
0

Я использую SFML для ввода системы в своем приложении.Ошибка ввода системы ввода

size_t WindowHandle; 
WindowHandle = ...; // Here I get the handler 

sf::Window InputWindow(WindowHandle); 
const sf::Input *InputHandle = &InputWindow.GetInput(); // [x] Error 

На последних строках я должен получить ссылку для системы ввода.

Вот декларация GetInput из documentation:

Проблема заключается в том:

>invalid conversion from ‘const sf::Input*’ to ‘sf::Input*’ 

Что случилось?

ответ

1

Есть ли специальная причина, по которой вы хотите иметь указатель, а не ссылку? Если нет, то вы можете попробовать это:

const sf::Input & InputHandle = InputWindow.GetInput(); 

Это вернет вам ссылку на ваш входной ручке.

Btw, это работает для меня:

const int& test(int& i) 
{ 
    return i; 
} 

int main() 
{ 
    int i = 4; 

    const int* j = &test(i); 

    cout << *j << endl; 
    return 0; 
} 

Выход: 4

Не знаю, почему компилятор не хочет, чтобы указать ссылку.

Смежные вопросы