繁体   English   中英

Arduino IDE File.cpp编译错误对我来说太高

[英]Arduino IDE File.cpp compile error too high for me

我正在尝试为Arduino UNO编写一个实际上不太复杂的程序,在那里我将GPS输出记录到SD卡中。

错误提示:

C:\Users\Marlo\AppData\Local\Temp\build51e9795045faa8d6f671223e5d050b6f.tmp\sketch\src\File.cpp:46:17: error: definition of implicitly-declared 'SDLib::File::~File()'

File::~File(void) {

             ^

文件夹中的某些库在此处使用了一些标准的编译输出行

exit status 1
Fehler beim Kompilieren.

^最后一行说“编译错误”

指向File.cpp的是SD.h使用的库,当我制作一个简单的“打开SD->制作文件->写入->关闭文件”程序(包括主程序中的所有包含项)时,它可以工作。

包括:

#include <stdio.h>      
#include <SD.h>         //<- uses File.cpp
#include <stdint.h>     
#include <Adafruit_GPS.h>
#include <SPI.h>
#include "avr/interrupt.h"   

错误所指的那部分代码是:

File.cpp

File::File(void) {
  _file = 0;
  _name[0] = 0;
  //Serial.print("Created empty file object");
}

File::~File(void) {   //<- line 46
  //  Serial.print("Deleted file object");
}

// returns a pointer to the file name
char *File::name(void) {
  return _name;
}

我没有在File.cpp中进行任何更改。

这个错误甚至意味着什么?

我很乐意分享我的代码,我只是不想粘贴整个内容并使这篇文章很大(但如果您这么说,我会的,所以我会告诉您是否需要任何东西:)

马龙的问候

更新:要查找包含错误的代码部分,我接一个接一个函数并将其编译在一个空白项目中-可以正常工作。 没错

然后,我将第一部分进行编译,然后添加下一部分进行编译,依此类推。 我现在在另一个文件(相同目录)中拥有完整的程序,并且可以正常运行。

抱歉,这只是我的电脑而已。

错误:隐式声明的“ SDLib :: File ::〜File()”的定义

这通常意味着该函数未在类定义中声明。

您是否有File.h并包含其中? 析构函数在那里声明了吗?

另请参阅

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM