나는 이런 내 방법이 열거 형을 사용하고 싶습니다이보호 된 enum이 유형으로 보이지 않습니다. 이유가 무엇입니까?
class MPU9250
{
protected:
// Set initial input parameters
enum A_scale
{
AFS_2G = 0,
AFS_4G,
AFS_8G,
AFS_16G
};
}
처럼, 보호 등의 emun을 정의하는 몇 가지 코드를 컴파일하고,이 방법은 같은 클래스 내에서 지금 공개
void setAccScale(A_scale accScale);
컴파일 오류가
../../MPU9250.h: In function 'void initMovementDetected()':
../../MPU9250.h:196:7: error: 'MPU9250::A_scale AFS_8G' is protected
AFS_8G,
^
../../nRF52.cpp:49:31: error: within this context
mpu9250.setAccScale(MPU9250::AFS_8G);
이 왜
말을하지만 동시에?setAccScale
공개 되나요?
감사
class MPU9250
{
protected:
// Set initial input parameters
enum A_scale
{
AFS_2G = 0,
AFS_4G,
AFS_8G,
AFS_16G
};
public:
void setAccScale(A_scale accScale);
}
편집 : 나는 당신이 있다면 공용 클래스를 필요가 있다고 생각 나는 A_scale
이 오류가 발생하지 않습니까? – Morgoth
컴파일러로'gcc-arm-none-eabi/5_2-2015q4/bin/arm-none-eabi-g ++'를 사용하는 위의 코드를 사용합니다. – ndarkness
void setAccScale (MPU9250 :: Ascale)을 사용해 보았습니까? –