이러한 함수를 구현하는 방법에 대해 궁금합니다. 나는이 필요 해요main 함수를 호출하는 방법 노드에 대한 참조가 포함되어 있습니다.
int main() {
Node *n;
int data;
foo(data, n);
return 0;
}
:
내가 그 함수를 호출 할 필요가 메인에서 다음class Node {
public:
int dataItem;
Node *next;
};
void foo(int number, Node & n) {
// do something
}
, 이런 식으로 뭔가가 작동하지 않습니다 예를 들어,
내가 좋아하는 뭔가를 래퍼 함수는 주 노드에서 참조로 노드를 전달하기 때문에 문제가되는 부분을 잘 모르겠습니다. 나는 몇 가지 아이디어를 시도해 보았지만 온라인에서 많은 것을 읽었지 만 나는 그것을 파악하지 못하고있다. 이 래퍼 함수를 구현하는 방법을 이해하는 데 도움이되는 것은 환상적입니다.
내가 두 번째 제안에 갔다 노드에 대한 기본 생성자를 생성하고, 그것을 작동합니다. 하지만 메모리 누수에 대한 경고는주의를 기울입니다. 내가 main에 돌아 오기 전에 간단히'delete n '을하는 한, 나는 괜찮을 것이다. –
@DerekW 첫 번째 작업을 수행 할 수없는 이유는 무엇입니까? * 많이 연습하는 것이 좋습니다. –
나는 포인터가 필요하다고 생각했지만, 왜 그것을 달성하려고 하는지를 보면서 미가공 포인터를 사용할 필요는 없다. 그래서 나는 또한 주먹 제안을 구현했고 그것은 실제로 잘 작동하고 있습니다. 당신은 저를 도왔습니다. 정말 고마워요! –