在一个类中存储变量

时间:2015-08-20 00:07:07

标签: arduino

我试图通过声明一个类来跟踪一组数据。 该类使用唯一ID进行初始化,但在稍后的某些计算中将其余的变量填入代码中。

首先,这是否是一种可接受的方式? 其次,我试图传递一个char数组,但它不想取值。这是定义fileName的正确方法,并在创建文件时回调它吗?

以下是示例,我从Customer类定义一个变量,然后尝试存储其文件名:

#ifndef customer_h
#define customer_h

class Customer
  {
public:
  Customer (char *number);
  char *ID;
  double current;
  double voltage;
  double powerConsumption;
  double remainingCredit;
  int relay;
  char *lastName;
  char *firstName;
  char *fileName;

private:
  }; 
Customer::Customer(char *number)
  {
    ID = number;
  } 
#endif

void setup()
{
cust1.fileName = getFileName(cust1.ID);
}


char *getFileName(char *customerID)
{

  char *charID;
  String newID;

  for (int i = strlen(customerID)-4; i<= strlen(customerID)-1; i++)
{
  newID += customerID[i];
}
  newID += ".csv";
  int lenID = newID.length() + 1;
  char fileName[lenID];
  newID.toCharArray(fileName,lenID);

  return fileName;
}

非常感谢您提供的任何帮助和信息!

1 个答案:

答案 0 :(得分:0)

最好使用结构化而不是类。它们非常相似,但在这种情况下看起来像一个结构会更好去看看差异,你会看到