c++: передача значение из константной структуры в неконстантную (выдается ошибка)

128
24 апреля 2019, 03:10

Подскажите как исправить следующую ошибку:

Есть структура данных:

struct CMyData
{
     int m_data;
};

Есть константный указатель на эту структуре

const CMyData* ptr = _get();

Хочу записать в другую структуру указатель на данные из первой

myData2.m_ptr = &ptr->m_data;

И получаю ошибку

error C2440: '=': cannot convert from 'const CMyData::int *' to 'CMyData::int *'

Исправляется отменой константы, т.е. так:

CMyData* ptr = _get();

Но хочется придерживаться минимальной функциональности - я же не собираюсь менять сам ptr, поэтому и объявил константой.

READ ALSO
c++: выделение места под контейнер

c++: выделение места под контейнер

Подскажите пожалуйста, если у меня есть контейнер и я знаю сколько в нем примерно будет элементов, для ускорения работы я могу выделить их изначально,...

127
Как “победить” инкапсуляцию

Как “победить” инкапсуляцию

Обычный пример с юнитом

113
Как индексировать сохраняемый файл Qimage

Как индексировать сохраняемый файл Qimage

Я нарезаю картинку в цикле и сохраняю ее таким способом

161
Как передать значение из реестра

Как передать значение из реестра

У меня есть виджет строкового поляКак сделать, чтобы сохранялся текст этой строки и передавался в реестр, чтобы потом можно было загрузить...

147