小编Tro*_*opE的帖子

C++将指针转换为静态方法

我很久没有写C++代码了; 但是现在我必须研究德州仪器F28335 DSP,我正在尝试从C迁移到C++.我有以下代码尝试使用类的静态方法初始化中断服务例程:

//type definition for the interrupt service routine
typedef interrupt void (*PINT)(void);
//EPWMManager.h
class EPWMManager
{
public:
    EPWMManager();      
    static interrupt void Epwm1InterruptHandler(void);  
};
//EPWMManager.cpp
interrupt void EPWMManager::Epwm1InterruptHandler(void)
{
 //some code to be called on interruption
}   
//main.cpp
int main(void)
{
    PINT p;
    p = &(EPWMManager::Epwm1InterruptHandler);
    return 0;
 }
Run Code Online (Sandbox Code Playgroud)

编译时我得到以下内容:

错误:类型为"void(*)()"的值无法分配给"PINT"类型的实体

我想我错过了一些演员.

c++ methods static compiler-errors interrupt

5
推荐指数
1
解决办法
1809
查看次数

标签 统计

c++ ×1

compiler-errors ×1

interrupt ×1

methods ×1

static ×1