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;
}
};
Почему так?