LINUX.ORG.RU

Не могу объявить переменную в структуре.

 


0

2
#include <vector>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <dirent.h>
#include <cstring>
#include <sys/types.h>
#include <string>


struct fileInfo {
  time_t st_mtime;
  std::string path;
};

Во время компиляции:

g++ -std=c++1y -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"main.d" -MT"main.d" -o "main.o" "../main.cpp"
In file included from /usr/include/i386-linux-gnu/sys/stat.h:105:0,
                 from ../main.cpp:5:
../main.cpp:14:10: error: expected ‘;’ at end of member declaration
   time_t st_mtime;
          ^
../main.cpp:14:10: error: expected unqualified-id before ‘.’ token
   time_t st_mtime;
          ^
make: *** [main.o] Ошибка 1

15:05:18 Build Finished (took 259ms)

★★

st_mtime это макрос, он разворачивается в st_mtim.tv_sec, поэтому ты пытаешься скомпилировать

struct fileInfo {
  time_t st_mtim.tv_sec;
  std::string path;
};

i-rinat ★★★★★
()
Ответ на: комментарий от anonymous

я компилирую в IDE Eclipse, это вывод в консоли, я как-то на это не обратил внимания. А как должно быть)?

dicos ★★
() автор топика
Ответ на: комментарий от slackwarrior

Я только начал изучать C++. Какие еще переменные зарезервированы в стандартной библиотеке?

dicos ★★
() автор топика
Ответ на: комментарий от dicos

Еще пара штук. Не помню название.

anonymous
()
Ответ на: комментарий от dicos

Я только начал изучать C++.

Это как раз норм, прост... это не с++11, а его генетический балласт :)

slackwarrior ★★★★★
()
Ответ на: комментарий от dicos

С точки зрения вопроса оп-поста — это монопенисуально и может даже не иметь ключа -std, т.к. уходит корнями в легаси, а теги с новыми плюсами только дезориентируют :)

slackwarrior ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.