Passaggio e output di un valore a una classe.
Considera questo esempio: devi passare un certo valore alla classe, elaborarlo e restituire il risultato allo schizzo. Ad esempio, restituisci il numero moltiplicato per 10:
File PassValue.h
#pragma once
#include <Arduino.h>
class PassClass
{
public:
long getValue(int value);
private:
};
File PassValue.cpp
#include <PassValue.h> // includere i file di intestazione richiesti
long PassClass::getValue(int value)
{
return value*10;
}
File PassValue.ino
#include <PassValue.h>
PassClass passObject;
void setup()
{
Serial.begin(9600);
Serial.println(passObject.getValue(32));
}
void loop()
{
}
File keywords.txt
##################################
#Syntax PassValue
##################################
#Class (KEYWORD1)
##################################
PassValue KEYWORD1
PassClass KEYWORD1
##################################
#Methods and Functions (KEYWORD2)
##################################
getValue KEYWORD2
Consideriamo una situazione più complicata: devi prendere un valore in una classe, scriverlo su una variabile privata e ottenerlo usando un metodo separato:
File PassValue2.h
#pragma once
#include <Arduino.h>
class PassClass2
{
public:
void setValue(int val);
int getValue();
private:
int _value = 0;
};
File PassValue2.cpp
#include <PassValue2.h> // includere i file di intestazione richiesti
void PassClass2::setValue(int val)
{
// prendiamo un valore esterno e scriviamo nel nostro _value
_value = val;
}
int PassClass2::getValue()
{
return _value; // restituisce una variabile da una classe
}
File PassValue2.ino
#include <PassValue2.h>
PassClass2 passObject;
void setup()
{
Serial.begin(9600);
passObject.setValue(5);
Serial.println(passObject.getValue());
}
void loop()
{
}
File keywords.txt
##################################
#Syntax PassValue2
##################################
#Class (KEYWORD1)
##################################
PassValue2 KEYWORD1
PassClass2 KEYWORD1
##################################
#Methods and Functions (KEYWORD2)
##################################
getValue KEYWORD2
setValue KEYWORD2