У меня возникли проблемы с объявлением и инициализацией массива символов. Он всегда отображает случайные символы. Я создал меньший кусок кода, чтобы показать, что я пытаюсь в моей большой программе:Как инициализировать массивы char в конструкторе?
class test
{
private:
char name[40];
int x;
public:
test();
void display()
{
std::cout<<name<<std::endl;
std::cin>>x;
}
};
test::test()
{
char name [] = "Standard";
}
int main()
{ test *test1 = new test;
test1->display();
}
И жаль, если мое форматирование плохо, я могу только выяснить этот сайт не говоря уже о том, как исправить мой код :(
Связанный: [Как я могу использовать список инициализации члена для его инициализации?] (Http://stackoverflow.com/q/5602030/636019) – ildjarn
Итак, теперь я использую std :: string, однако в большей программе это для того, чтобы я использовал функцию get, подобную этой : void get (char prompt [], int size, char b []), где char b [] был моим массивом char ранее. Как мне изменить это, чтобы передать строку моей функции get? – ShengLong916
Верните объект 'std :: string' вместо' void'. – ildjarn