Здравствуйте, Igore, Вы писали:
I>Здравствуйте, SmileIlya, Вы писали:
SI>>Доброго всем дня.
SI>>Есть проблема, кусок кода ниже.
SI>>Суть проблемы в том, что при вызове memcpy приложение схлопывается, ругаясь на ошибку чтения.
SI>>SI>>const void* pValue = (void*)vDouble.data();
SI>>size_t nBytes = sizeof(double) * vDouble.size();
SI>>size_t nValueBytes = 0;
SI>>void* pValuePoint = NULL;
SI>>if(vDouble.empty())
SI>> return NULL;
SI>>if(!pValuePoint)
SI>> pValuePoint = malloc(nBytes);
SI>>else //Это часть выкинуть таких условий не возникает
SI>> if(nValueBytes != nBytes)
SI>> pValuePoint = realloc(pValuePoint, nBytes);
SI>>if(!pValuePoint)
SI>> return NULL;
SI>>nValueBytes = nBytes;
SI>>memcpy(pValuePoint, pValue, nValueBytes); // проблема тут
SI>>
I>Попробуй с моими исправлениями, но я бы это все просто переписал и не мучился, ведь то что ты привел это.
I>I>auto pValuePoint = vDouble;
I>
Копирование проходит успешно, теперь другая проблема как из всего этого счастья получать опять полноценный вектор?