gpt4 book ai didi

C++链表创建——传入一个数组

转载 作者:行者123 更新时间:2023-11-30 02:06:01 26 4
gpt4 key购买 nike

我正致力于在 C++ 中创建链表,但我不知道如何在构造函数中将数组作为参数传递,或者这是否是合法的语法。

这是我得到的错误:

CheckTextFile.cpp: In constructor ‘Node::Node(char*, int)’:
CheckTextFile.cpp:19: error: incompatible types in assignment of ‘char*’ to ‘char [0u]’
CheckTextFile.cpp: In constructor ‘Node::Node(char*, int, Node*)’:
CheckTextFile.cpp:24: error: incompatible types in assignment of ‘char*’ to ‘char [0u]’

这是我的代码:

class Node{
public:
int length;
char data[];
Node * next;
Node(char x[], int y){
data = x;
length = y;
next = NULL;
}
Node(char x[], int y, Node * z){
data = x;
length = y;
next = z;
}

};

最佳答案

你的论点传递很好。但是,您的:

char data[];

声明了一个没有大小的数组,因此编译器拒绝生成代码将任何内容放入其中也就不足为奇了。也许尝试:

std::string data;

这是假设您的 x[] 代表一个以 NUL 结尾的 C 字符串。

完成之后,了解构造函数的成员初始化语法

关于C++链表创建——传入一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9170873/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com