Использование каналов внутри класса в C ++ - PullRequest
1 голос
/ 17 апреля 2010

Я пытаюсь использовать этот учебник для создания графиков с Gnuplot в C ++. Однако я буду использовать канал к Gnuplot из класса, но затем я столкнусь с некоторыми проблемами:

У меня есть файл заголовка, в котором я объявляю все переменные и т. Д. Мне нужно также объявить переменную pipe, но как мне это сделать?

Я пытался сделать это сразу, но это не работает:

logger.h:

class Logger {
    FILE pipe;
}

Logger.cpp:

Logger::Logger() { //Constructor
    *pipe = popen("gnuplot -persist","w");
}

выдает ошибку Logger.cpp:28: error: no match for ‘operator=’ in ‘*((Logger*)this)->Logger::pipe = popen(((const char*)"gnuplot -persist"), ((const char*)"w"))’

Предложения

1 Ответ

4 голосов
/ 17 апреля 2010

Ваш ФАЙЛ должен быть указателем на ФАЙЛ

FILE *pipe;

затем

pipe = popen(...)

...