Как инициализировать и выделить память для массива в структуре в заголовочном файле? - PullRequest
0 голосов
/ 18 января 2012

У меня такой вопрос, есть struct data в test.h

struct data {
static int year[10];
static int month[12];
static int day[31];
};

В файле Cpp у меня есть несколько функций, которые должны вызывать его. Где и как мне его инициализировать?

void test::display(){
     struct data pointer;
     /* ... */
     // These three arrays should be initialized
     pointer.year[index1] = Timeyear;
     pointer.month[index2] = Timemonth;
     pointer.day[index3] = Timeday;
     printf("%d %d %d", pointer.year[index1],
         pointer.month[index2], pointer.day[index3]);
     /* ... */
}

Ответы [ 2 ]

3 голосов
/ 18 января 2012

Вы, кажется, очень запутались между C и C ++.

printf? Это плохо. Действительно плохо. struct data pointer? Кювет struct.

Кроме того, если вы хотите инициализировать его, просто используйте конструктор .

0 голосов
/ 18 января 2012

Я думаю, что ваша проблема уже решена STL.

Вы должны узнать больше об объектах std :: time_t

Смотри также:

Строковое представление time_t?

Как получить локальную дату-время из time_t с помощью boost :: date_time?

вопрос формата преобразования time_t

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...