编译器总是在cpp中编译未使用的函数

时间:2014-09-14 10:47:48

标签: c++ arduino

即使我不使用此函数,如果函数在cpp中实现(因为attachInterrupt()),它总是使用4个字节的ram。如果我在.h中内联它就不会编译任何东西

.h
// attach the interrupt function
void IRLbegin(const uint8_t interrupt);

.cpp
void IRLbegin(const uint8_t interrupt){
// attach the function that decodes the signals
attachInterrupt(interrupt, IRLinterrupt, CHANGE);
}

我能对此做些什么?我认为写.h中的所有内容都不是很好的编码风格。由于Arduino环境,我无法更改优化设置。

1 个答案:

答案 0 :(得分:0)

简单地调用另一个函数的函数在标题中很好地内联。尝试使用1.5.8版本的IDE,因为它有一个较新的编译器,通常会在我找到的.CPP中内联小函数。