2009-07-28 5 views
0

, что, как я строить: НКУ pkg-config --cflags --libs gtk+-2.0 -o икру spawn_with_pipes.cg_slice_new не принимает мой тип структуры

В фрагменте примера ниже, я получаю сообщение об ошибке: ошибка синтаксиса, прежде чем «Data - это относится данные = g_slice_new (данные);

#include <gtk/gtk.h> 

typedef struct 
{ 
    /* Buffers that will display output */ 
    GtkTextBuffer *out; 
    GtkTextBuffer *err; 

    /* Progress bar that will be updated */ 
    GtkProgressBar *progress; 

    /* Timeout source id */ 
    gint timeout_id; 
}Data; 

data= g_slice_new(Data); //error here 

ответ

3

Initalisers вне функции должны быть константными выражениями Вы не можете вызвать функцию в них

Кроме того, переменные «данные» в вашем коде.. является int и возврат g_slice_new является gpointer.

Вам нужно будет изменить определение «данных» и переместить инициализацию в основной:

gpointer data; 

int main(int argc, char *argv[]) 
{ 
    ... 
    data = g_slice_new(Data); 
Смежные вопросы