Как удалить определенные множественные записи в Codeigniter [закрыто]

Что происходит в этом коде:

const char * returnCharPtr()
{
    std::string someString("something");
    return someString.c_str();
}
  1. экземпляр std::string создан - это объект с автоматическим временем хранения
  2. указатель на внутренний память этой строки возвращается
  3. объект someString разрушен и внутренняя память очищена
  4. вызывающая сторона этой функции получает оборванный указатель (недействительный указатель), который дает неопределенное поведение

Лучшее решение: возвращает объект :

std::string returnString()
{
    std::string someString("something");
    return someString;
}
-8
задан John David 26 March 2018 в 05:52
поделиться