我正在尝试使用我自己创建的计时器库,其中使用了clock_t。当我编译这个sketch时,一直出现错误。这是我一直遇到的错误:error: 'clock_t' in namespace 'std' does not name a type
。
使用clock_t是否可能?我编写的库在c++编译器上运行得非常完美,但在这里却不行。
我对Arduino还很陌生,希望能获得帮助。提前感谢您的回复。
#include <ctime>
。可能在您使用clock_t的C++实现中,ctime是通过另一个头文件间接包含的,而Arduino的实现中该其他头文件未包含ctime。clock_t
。我在库的源文件中搜索并查看了文档,但没有找到它。AVR Libc中也没有time.h
。而在AVR-libc FAQ中:... Arduino语言仅是一组可以从您的代码中调用的C/C++函数。您的草稿将经历轻微更改(例如自动生成函数原型),然后直接传递给C/C++编译器(avr-g++)。所有标准C和C++构造由avr-g++支持应该在Arduino中工作。...
因此,Arduino不为您提供C++标准库-因此我可以在AVR上使用C ++吗?
但是,目前没有支持libstdc ++的支持库,这是完整的C ++实现所需的标准支持库。这对可以编译的C ++程序施加了许多限制。其中包括:
- 显然,没有任何与C ++相关的标准函数、类和模板类可用。
ctime
(C++)以及time.h
(C)也不可用。也就是说,在Arduino环境中很可能无法使用clock_t
。
std::
将完全缺失。 - MSalters