Операторы «новый» и «удалить» в C++.C++

Программы на C++. Форум разработчиков
Anonymous
Операторы «новый» и «удалить» в C++.

Сообщение Anonymous »

Я столкнулся с проблемой в упражнении из книги Бьёрна Страуструпа book (edition edition), глава chapter, страница страница:
Программа работает нормально, если не использовать delete Linearray1;.
Соответственно возникает проблема при удалении выделенной динамической памяти .
У меня нет сообщений об ошибках или предупреждений в консоли.
Однако VS Code показывает мне эту проблему в этой строке (delete linearray1).
Выделяет всю строку желтым цветом.
Подскажите, как решить проблему в данном случае. Как правильно очистить выделенную память?
#include

void fillarray(std::string& array)
{
char* linearray1 {new char};
char* line = linearray1;
std::cin >> line;

while (*line)
{
if (*line == '!')
break;
array += *line;
line++;
}
delete linearray1;
}

int main()
{

std::string linearray1;
fillarray(linearray1);
std::cout

Подробнее здесь: https://stackoverflow.com/questions/792 ... elete-in-c

Вернуться в «C++»