История изменений
Исправление korvin_, (текущая версия) :
1) Юзер имеет только интерфейс. Использует только его и shared object.
2) Юзер не имеет доступа к полям структуры. Т.е. mystruct.float_val = 99.99; выполнить нельзя.
Либо используй указатели и создание объектов в куче, типа
mystruct* create_mystruct() {
mystruct* obj = malloc(sizeof(mystruct));
obj->float_val = 1.1;
return obj;
}
void destroy_mystruct(mystruct* obj) {
free(obj);
}
со всеми плюсами и минусами, либо открывай структуру. Любые другие извращения лишь внесут путаницу и трудноуловимые баги.
Исходная версия korvin_, :
1) Юзер имеет только интерфейс. Использует только его и shared object. 2) Юзер не имеет доступа к полям структуры. Т.е. mystruct.float_val = 99.99; выполнить нельзя.
Либо используй указатели и создание объектов в куче, типа
mystruct* create_mystruct() {
mystruct* obj = malloc(sizeof(mystruct));
obj->float_val = 1.1;
return obj;
}
void destroy_mystruct(mystruct* obj) {
free(obj);
}
со всеми плюсами и минусами, либо открывай структуру. Любые другие извращения лишь внесут путаницу и трудноуловимые баги.