136 14 C:\Users\寒色晓光\Desktop\数据结构课程设计.cpp [Error] invalid initialization of reference of type 'LNode&' from expression of type 'LinkList {aka LNode*}
时间: 2023-12-04 10:03:32 浏览: 97
这个错误可能是因为你在某处尝试将一个 `LinkList` (也就是 `LNode*` 类型)的指针初始化为一个 `LNode&` 引用类型。
在 C++ 中,引用是一个别名,必须在初始化时绑定到一个已存在的对象上。因此,你不能将一个指针直接初始化为一个引用类型,而应该使用引用类型的指针或引用类型的参数来传递指针。
例如,如果你有一个结构体 `LNode` 和一个函数需要以引用类型的参数来接受它,你可以这样声明函数:
```
void someFunction(LNode*& nodeRef) {
// Function code here
}
```
这将允许你传递一个指向 `LNode` 的指针,并在函数中修改它。如果你需要返回一个指向 `LNode` 的指针,你可以返回一个指针类型的引用,例如:
```
LNode*& getLNodePtr() {
LNode* nodePtr = new LNode();
return nodePtr;
}
```
这将允许你返回一个指向 `LNode` 的指针,并在调用方中使用它。
相关问题
70 14 C:\Users\寒色晓光\Desktop\数据结构课程设计.cpp [Error] return-statement with a value, in function returning 'void' [-fpermissive]
这个错误是因为你在一个返回类型为 `void` 的函数中使用了带返回值的 `return` 语句,编译器不允许这样做。请检查一下你的代码,将所有返回类型为 `void` 的函数中的 `return` 语句都改为不带返回值的形式即可解决这个问题。例如,如果你的函数定义如下:
```
void myFunction() {
// do something
return 1; // 带返回值的 return 语句
}
```
应该改为:
```
void myFunction() {
// do something
return; // 不带返回值的 return 语句
}
```
阅读全文