Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Евгений2395
0 / 0 / 0
Регистрация: 23.11.2014
Сообщений: 20
Записей в блоге: 2
#1

Инициализация char в конструкторе - C++

23.11.2014, 14:04. Просмотров 296. Ответов 3
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class Abit
{
public:
   Abit();
   ~Abit();
 
 
protected:
private:
   bool medal;
   bool contractbudget;
   char name[15];
   bool neZdalKontract;
};
 
Abit::Abit():
medal(0),
contractbudget(0),
neZdalKontract(0)
{
strcpy(name,"Petya");
    std::cout<<"'Abit' was created (default)."<< std::endl;
}
 
int main()
{
Abit abit1;
system("pause");
return 0;
}
При инициализации name все компилируется, но потом выводит сообщение:"Run-Time Check Failure #2 - Stack around the variable 'abit1' was corrupted.". Если сделать так: "strcpy(name,"P");", то все нормально. Не могу понять как сделать так, чтобы name инициализировалось без этой ошибки:"Run-Time Check Failure #2 - Stack around the variable 'abit1' was corrupted."?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.11.2014, 14:04     Инициализация char в конструкторе
Посмотрите здесь:

Инициализация строковых массивов в конструкторе C++
C++ Инициализация массива в конструкторе
Инициализация элементов массива в конструкторе C++
инициализация перменных в конструкторе C++
C++ Инициализация перемнных класса в конструкторе
C++ инициализация массива char в конструкторе
Инициализация char массива C++
C++ Инициализация vector<char>
C++ Задание размера и инициализация массива указателей в конструкторе
Как записать char массив в конструкторе C++
C++ Инициализация вектора статическим массивом в конструкторе класса
C++ Инициализация *char в конструкторе

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mishelle92
57 / 56 / 19
Регистрация: 09.10.2012
Сообщений: 179
Завершенные тесты: 1
23.11.2014, 14:11     Инициализация char в конструкторе #2
А деструктор есть?
Евгений2395
0 / 0 / 0
Регистрация: 23.11.2014
Сообщений: 20
Записей в блоге: 2
23.11.2014, 16:20  [ТС]     Инициализация char в конструкторе #3
да
C++
1
2
3
4
Abit::~Abit()
{
   std::cout<<"'Abit' was destroyed."<<std::endl;// TODO : implement
}
Евгений2395
0 / 0 / 0
Регистрация: 23.11.2014
Сообщений: 20
Записей в блоге: 2
24.11.2014, 20:13  [ТС]     Инициализация char в конструкторе #4
Оказалось все правильно, просто заголовочный файл не тот открыл)
Yandex
Объявления
24.11.2014, 20:13     Инициализация char в конструкторе
Ответ Создать тему
Опции темы

Текущее время: 06:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru