2012-02-25 3 views
0

Я знаю, что вы можете рассматривать этот пост как другой дубликат, в то время как это не так. Это не дубликат, потому что мой код отличается от других, и никто другой пост (что Я видел) решил мою проблемуС ++ ожидаемый конструктор, деструктор или преобразование типа перед '(' токен

Вот мой код:..

#include "sprite.h" 

SDL_Surface * SPRITE::screen; 
int player; 
void DrawPlayer(int x, int y) { 
    SDL_Rect rect = {x,y,20,20}; 
    SDL_FillRect(SPRITE::screen, &rect, 0x00CC00); 
} 
DrawPlayer(20,20); 

ошибка на линии DrawPlayer(20,20);

+1

В какую строку вы принимаете ошибку? – spencercw

+0

Извините, я отредактирую оригинальный пост. –

+2

Почему вы * решили решить, является ли это дубликат? Быть дубликатом - это не буквально одно и то же выражение вашего кода или вопроса, а решение одной и той же * проблемы *. –

ответ

2

Вы не можете иметь свой вызов DrawPlayer снаружи любого метода вызов должен находиться внутри класса метод или глобальный метод.

1

DrawPlayer должно быть в main или другой функции.

1

Как вы можете вызвать функцию, когда она не находится в теле функции?

2
Try this: 

#include "sprite.h" 

SDL_Surface * SPRITE::screen; 
int player; 
void DrawPlayer(int x, int y) { 
    SDL_Rect rect = {x,y,20,20}; 
    SDL_FillRect(SPRITE::screen, &rect, 0x00CC00); 
} 

int main() 
{ 
    DrawPlayer(20,20); 
    return 0; 
} 
Смежные вопросы

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