【发布时间】:2014-07-09 15:29:14
【问题描述】:
#include <iostream>
using namespace std;
class X{
private:
char ime[50];
X(char *c){ // or char (char c[]) which one to use?
// how to set the value of c inside the ime[50];
}
};
int main()
{
return 0;
}
我想在类的构造函数中将 char 作为函数参数传递,所以我可以使用两种方式.. 我应该使用哪一种?而一旦传了值,怎么把c的值放到类的char ime[50]变量里面呢?
【问题讨论】:
-
请改用
std::string。否则你将不得不担心被传递的东西的长度。 -
... 或使用
std::vector<char>- 取决于您的需要。 -
@juanchopanza 用于指定我应该使用具有指定最大长度的字符的练习。
-
好的,那么你必须确保你复制的字符数不超过 50 个,记住字符串“aka c-strings”是以 nul 结尾的,即它们的结尾用
'\0'标记特点。无论你的函数参数是char*还是char[]都是装饰性的。 -
为什么要添加“使用命名空间标准”?这是一个坏习惯。