簡體   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