Я пытаюсь реализовать структуру лица, и мне нужно скрыть некоторые поля или сделать их постоянными. Трюк для создания приватных полей.
Заголовок:
#pragma once
#define NAME_MAX_LEN 20
typedef struct _person {
float wage;
int groupid;
} Person;
const char const *getName (Person *p);
int getId (Person *p);
/// OTHER FUNCTIONS
Источник
#include "person.h"
struct _person
{
int id;
float wage;
int groupid;
char name[NAME_MAX_LEN];
};
/// FUNCTIONS
GCC говорит, что person.c:7:8: error: redefinition a 'struct _person' struct _person
Я могу написать это в заголовке, но после этого я не могу использовать поля структуры.
typedef struct _person Person;