簡體   English   中英

'int'之前的預期unqualified-id

[英]Expected unqualified-id before 'int'

我正在嘗試創建一個Arduino庫,對於我將在幾個草圖中使用的構建,我無法弄清楚為什么我會一直收到此錯誤。 在多個論壇上搜索,沒有找到合適的答案。 這是我的代碼:

charLCD.h:

#ifndef charLCD
#define charLCD

#include "Arduino.h"
class charLCD
{
  public:
    charLCD(int pin1,int pin2,int pin3,int pin4,int enable);
    void sendChar(unsigned char c);

  private:
    int _pin1;
    int _pin2;
    int _pin3;
    int _pin4;
    int _enable;



};
#endif

charLCD.cpp:

#include "Arduino.h"
#include "charLCD.h"
#include <limits.h>
charLCD::charLCD(int pin1,int pin2,int pin3,int pin4,int enable) {
  _pin1 = pin1;
  _pin2 = pin2;
  _pin3 = pin3;
  _pin4 = pin4;
  _enable = enable;

}

void sendChar(unsigned char c) {
    // Send char to item
}


char* chartobin ( unsigned char c )
{
    static char bin[CHAR_BIT + 1] = {0};
    int i;

    for ( i = CHAR_BIT - 1; i >= 0; i-- )
    {
        bin[i] = (c % 2) + '0';
        c = c/2;
    }

    return bin;
}

問題出在我在頭文件中定義構造函數的行上。

因為

#define charLCD

這是你的編譯器看到的:

class
{
  public:
    (int pin1,int pin2,int pin3,int pin4,int enable);
    void sendChar(unsigned char c);

  private:
    int _pin1;
    int _pin2;
    int _pin3;
    int _pin4;
    int _enable



};

::(int pin1,int pin2,int pin3,int pin4,int enable) {
  _pin1 = pin1;
  _pin2 = pin2;
  _pin3 = pin3;
  _pin4 = pin4;
  _enable = enable;

}

// ...

選擇一個更好的頭球衛士。

您還需要限定成員函數的定義:

void charLCD::sendChar(unsigned char c) {
    // Send char to item
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM