void 函数和 return this 之间的链表 C++ 区别

linked list c++ difference between void function and return this

我对两种编码风格之间的区别有疑问:

void *addfirst (int data){
     head = new Node(int data, head);
     return;
}

第二个是:

LinkedList *addfirst (int data){
     head = new Node(int data, head);
     return this;
}

我教授说现在大多数人都喜欢第二种,但不知道有没有什么优势,跟第一种比较?

void *addfirst (int data){
     head = new Node(int data, head);
     return;
}

函数被声明为 return 类型 void* 的对象。 return 函数 return 什么都没有。程序的行为未定义。

LinkedList *addfirst (int data){
     head = new Node(int data, head);
     return this;
}

此函数执行 return 一个对象。行为定义明确。