Применяется ли гарантия C++ const к параметрам с перекрывающейся памятью?C++

Программы на C++. Форум разработчиков
Anonymous
Применяется ли гарантия C++ const к параметрам с перекрывающейся памятью?

Сообщение Anonymous »

Есть ли в этом коде какие-либо части, которые нарушают гарантию ключевого слова const в C++? Почему?
struct X {
int val{};
int *extValPtr;
};

struct ContainsX {
X x{};
int val{};
};

int Func1(const ContainsX &containsX, X &x) {
++x.val;
++(*x.extValPtr);
return containsX.x.val + containsX.val;
}

int Func2(ContainsX &containsX) {
containsX.x.extValPtr = &containsX.val;
return Func1(containsX, containsX.x);
}


Подробнее здесь: https://stackoverflow.com/questions/798 ... ing-memory

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