класс наследуемый от С-структуры
От: ncode  
Дата: 30.10.07 10:38
Оценка:
gcc 3.4.6
В sys/timespec.h есть такая структура:
struct timespec {
        time_t  tv_sec;         /* seconds */
        long    tv_nsec;        /* and nanoseconds */
};


Хочу использовать ее с С++ (знаю что это необязательно так делать, но вопрос не в этом)
class time_spec : public timespec
{
public:
    time_spec() throw() {}

    //такой конструктор не компилируется
    //...generic.h: In constructor `time_spec::time_spec()':
    //...generic.h:216: error: class `time_spec' does not have any field named `tv_sec'
    time_spec(time_t seconds, long nanoseconds) throw() :
        tv_sec(seconds), tv_nsec(nanoseconds) {}

    //а такой компилируется
    time_spec(time_t seconds, long nanoseconds) throw()
    {
        tv_sec = seconds; 
        tv_nsec = nanoseconds;
    }
};

Почему так?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.