Я хотел бы выделить структуру в куче, инициализировать ее и вернуть указатель на нее из функции. Мне интересно, есть ли способ инициализировать константные члены структуры в этом сценарии:
#include <stdlib.h>
typedef struct {
const int x;
const int y;
} ImmutablePoint;
ImmutablePoint * make_immutable_point(int x, int y)
{
ImmutablePoint *p = (ImmutablePoint *)malloc(sizeof(ImmutablePoint));
if (p == NULL) abort();
// How to initialize members x and y?
return p;
}
Следует ли из этого сделать вывод, что невозможно выделить и инициализировать структуру в куче, которая содержит константные члены?