У меня есть класс, и мне нужно сделать размер одного из его защищенных элементов общедоступным.
Я не могу сделать это поле общедоступным и не хочу вводить новое поле, поэтому я пытаюсьвведите enum и присвойте ему размер поля, например:
class MyObject
{
public:
enum
{
myFieldSize = sizeof(myField),
};
protected:
uint8_t myField;
}
Однако мой компилятор говорит мне, что он не может найти объявление для "myField".Это ожидаемое поведение?У меня есть другие общедоступные функции, которые обращаются к myField, почему перечисление, по-видимому, не может это сделать?