我有一个结构,比如
typedef struct {
void* data;
int index;
} Node;
我有一些像
Node* node = (Node*)malloc(sizeof(Node));
enqueue(&list, node);
然后我有一个功能:
delete_node(Node* node) {
free(node->data);
free(node);
}
考虑free(node->data);
。如果data
是指向堆数据的指针,那很好,但如果是引用,那就有问题了。我将如何处理?(标签已经很明显了,但只是为了强调一点:这不是 C++ 问题。)