使用指针指定节点的初始化(C++)
designated Initialization of a Node with a pointer (C++)
在链表中创建新节点时,如下所述使用指定初始化器初始化节点成员是否合法?
这样做有什么影响吗?什么是实现相同结果的更好方法?
(语言:C++)
Node *temp = new Node{.data = value, .next = NULL};
struct Node
{
int data;
Node *next;
};
我认为你可以使用函数作为构造函数。
Node* newFunction(int data) {
Node* newNode = malloc(sizeof(Node));
newNode->data=data;
newNode->next=NULL;
return newNode;
}
之后就可以在主体部分使用了;
Node* newNode = newFunction(5);
在链表中创建新节点时,如下所述使用指定初始化器初始化节点成员是否合法? 这样做有什么影响吗?什么是实现相同结果的更好方法? (语言:C++)
Node *temp = new Node{.data = value, .next = NULL};
struct Node
{
int data;
Node *next;
};
我认为你可以使用函数作为构造函数。
Node* newFunction(int data) {
Node* newNode = malloc(sizeof(Node));
newNode->data=data;
newNode->next=NULL;
return newNode;
}
之后就可以在主体部分使用了;
Node* newNode = newFunction(5);