【发布时间】:2018-05-30 12:22:00
【问题描述】:
我有一个带有参数char*(只有数字)的构造函数,我想做一个简单的数学运算。我想在构造函数int[]/int* 中添加新参数以使其更容易。
标题:
class BigNum {
char *value;
int* arr;
public:
BigNum(char*, int * = 0) {};
BigNum();
};
cpp:
BigNum::BigNum(char* value, int *tab){
int length = sizeof(value) / sizeof(char*);
for (int i = 0; i < length; i++) {
arr[i] = value[i];
}
}
我可以这样做吗?它甚至不编译。
我可以对这个示例做些什么,将char* 更改为int。
【问题讨论】:
-
为什么不寻找长度直到空字符,如果选项卡与值的长度不同,你会有一些未定义的行为
-
Int* 应该是什么?
-
欢迎堆栈溢出。在发布问题之前,请阅读帮助部分。虽然您的问题不是一个糟糕的第一个问题,但我不明白您要完成什么。您能否通过示例将其添加到问题的开头?
-
int length = sizeof(value) / sizeof(char*);这不会计算数组的大小。这是一个常数值 1。您的目标int length = sizeof(value) / sizeof(char);也不会计算大小。不幸的是,它也是一个常数值。见:stackoverflow.com/questions/14298710/…