Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.03.2021, 17:57   #1
-d1mon-
 
Регистрация: 07.03.2021
Сообщений: 8
По умолчанию C++ создание класса string

почему код не компилируеться?

Код:
#include<iostream>
#include<string>

using namespace std;

class MyString
{
public:

	//конструктор без параметров
	MyString()
	{
		str = nullptr;
		length = 0;
	}

	//конструктор с параметрами, при создании объекта класса необходимо перелать строку которую он будет хранить
	MyString(char* str)
	{

		length = strlen(str);// функция strlen получает количество символов в строке которую мы передаём в объект

		// выделяем память для динамического массива где будет храниться наша строка
		// +1 символ так как нужно место в массиве под терминирующий 0
		this->str = new char[length + 1];

		// копируем символы строки в массив нашего класса
		for (int i = 0; i < length; i++)
		{
			this->str[i] = str[i];
		}

		//закрываем строку терминирующим нулём
		this->str[length] = '\0';

	}
	// деструктор, отвечает за освобождение ресурвов занятых объектом, вызывается при уничтожении объекта класса
	~MyString()
	{
		delete[] this->str;
	}
private:

	char* str;
	int length;


};
int main()
{
	MyString a("hello");
	return 0;
}

Последний раз редактировалось BDA; 07.03.2021 в 19:46.
-d1mon- вне форума Ответить с цитированием
Старый 07.03.2021, 19:47   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

Во-первых, используйте кнопку CODE для оформления кода. Во-вторых, не компилируется потому, что strlen объявлен в заголовке cstring.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
создание класса с++ аннет1502 Помощь студентам 6 29.10.2018 21:40
Переопределение операторов, создание собственного класса String БалаШагаЛ Общие вопросы C/C++ 3 04.04.2013 11:00
Задача с элементом класса System.String FullhDi C# (си шарп) 3 03.01.2013 00:28
Исходники класса String KaneKRY Visual C++ 2 08.04.2011 08:37
Runtime error - array of string как атрибут класса ElSnake Помощь студентам 1 08.05.2010 19:51