无法访问在类"Windows::D evices::传感器::加速度计"中声明的私有成员
cannot access private member declared in class 'Windows::Devices::Sensors::Accelerometer'
我有以下代码:
加速度计Delegate.h
#pragma once
#include "pch.h"
using Windows::Devices::Sensors::Accelerometer;
using Windows::Devices::Sensors::AccelerometerReading;
ref class AccelerometerDelegate sealed
{
public:
double GetX();
double GetY();
double GetZ();
AccelerometerDelegate();
void GetCurrentReading();
private:
Accelerometer ^ accelerometer;
AccelerometerReading ^ accelerometerReading;
};
加速度计Delegate.cpp
#include "pch.h"
#include "AccelerometerDelegate.h"
AccelerometerDelegate::AccelerometerDelegate()
{
accelerometer = ref new Accelerometer();
}
void AccelerometerDelegate::GetCurrentReading()
{
accelerometerReading = accelerometer->GetCurrentReading();
}
double AccelerometerDelegate::GetX()
{
return accelerometerReading->AccelerationX;
}
double AccelerometerDelegate::GetY()
{
return accelerometerReading->AccelerationY;
}
double AccelerometerDelegate::GetZ()
{
return accelerometerReading->AccelerationZ;
}
构造声明引发编译错误:
Error 1 error C2248: 'Windows::Devices::Sensors::Accelerometer::Accelerometer' : cannot access private member declared in class 'Windows::Devices::Sensors::Accelerometer'
我在我的游戏类中称之为:
Game.h
#pragma once
#include "pch.h"
#include "CubeRenderer.h"
#include "AccelerometerDelegate.h"
ref class Game sealed : public Windows::ApplicationModel::Core::IFrameworkView
{
public:
Game();
...
private:
AccelerometerDelegate ^ accelerometer;
...
};
Game.cpp
void Game::Initialize(CoreApplicationView^ applicationView)
{
...
accelerometer = ref new AccelerometerDelegate();
}
你知道为什么会这样吗?
- 加速度计内置于windows phone命名空间中:windows::Devices::Sensors
其声明如下:
public : ref class Accelerometer sealed Member of Windows::Devices::Sensors Summary: Represents an accelerometer sensor. Attributes: [Windows::Foundation::Metadata::DualApiPartitionAttribute(version = 100794368), Windows::Foundation::Metadata::VersionAttribute]
似乎是一个必须使用Accelerometer::GetDefault()
检索的单例
请参阅文档。
相关文章:
- .cpp和.h文件中的模板专用化声明
- 计算数组c++的平均值
- 未在作用域中声明unordered_map
- C++避免重复声明的语法是什么
- 如何确保C++函数在定义之前声明(如override关键字)
- 错误:未在此范围内声明'reverse'
- 奇怪的(对我来说)返回声明 - 在谷歌上找不到任何关于它的信息
- 为什么在定义函数之前先声明它
- 如何声明特征矩阵,然后通过嵌套循环初始化它
- #ifdef和未声明的标识符
- 没有显式声明的int[]中的foreach
- 在基于范围的for循环中使用结构化绑定声明
- 在将变量声明为引用时,堆在释放后使用
- 使用阈值进行加速度计振动检测
- 使用 Qt c++ 在 Windows Surface Pro 上获取加速度计数据
- Sprite套件 - 播放器使用加速度计的屏幕
- 设备陀螺仪(加速度计)在 Cocos2dx-2.2.6 中无法使用 -ObjC 链接器标志
- 无法访问在类"Windows::D evices::传感器::加速度计"中声明的私有成员
- 如何在 cocos2dx 中使用加速度计
- 加速度计"高度变化"代码 PIC