【发布时间】:2011-11-13 06:42:48
【问题描述】:
我收到了来自 mbed C++ 编译器的错误消息,这些消息似乎表明包括防护装置出现故障。
在 main.cpp 中,我包含如下头文件:
#include "mbed.h"
#include "sample.h"
这是我的示例.h:
#include "mbed.h"
#ifndef STUFF_H
#define STUFF_H
/* LEDs */
DigitalOut led1(LED1);
DigitalOut led2(LED2);
DigitalOut led3(LED3);
DigitalOut led4(LED4);
/* Subroutines */
void sweepLEDs();
void pulseLEDs(int numPulses);
void clearLEDs();
#endif
在 sample.cpp 中,我包含 sample.h 如下:
#include "sample.h"
在 main.cpp 和 sample.cpp 中,我指的是变量 led1, led2, led3, led4 而没有声明它们。但是,编译器会输出这些抱怨:
" 符号 led1 多次定义(由 sample.cpp.cpp.LPC1768.o 和 main.cpp.cpp.LPC1768.o)。" ... " 符号 led4 多次定义(由 sample.cpp.cpp.LPC1768.o 和 main.cpp.cpp.LPC1768.o)。"
我的包含保护是否写得不正确?还是有其他问题?
(供参考,这里是link to the mbed.h source)
【问题讨论】: