Как написать реализацию массива отдельно от объявления?
- Войдите на сайт для отправки комментариев
Ср, 20/11/2019 - 17:39
Здравствуйте. хочу написать свою библиотеку для семисегментного индикатора со сдвиговым регистром. Вроде что то пока придумываю и записываю. Возникла проблемка с массивом, не знаю как написать отдельно его объявление в классе Public в .h, и его реализацию в .cpp. Не знаю, может через 2 двоеточия как функцию?
код заголовочного файла(код реализации еще не писал):
#pragma once
#include <Arduino.h>
class seg {
public:
seg(const int _latchPin, const int _dataPin, const int _clockPin);
segprint(int number, int delayval);
private:
byte inf[10]; // value array
int latchPin;
int dataPin;
int clockPin;
int latchgetter();//
void latchsetter(const int _latchpin);//
int datagetter();//
void datasetter(const int _datapin);// setters, getters and register write
int clockgetter();//
void clocksetter(const int _clockpin);//
void registerWrite(int whichState);//
int decfunc(int val);//
int prim(int val);// functions to sevensegment
int hundreed(int val);//
};
Дак вон же - описан массив в private. Что не работает?
Если массив принадлежит экземпляру, то у Вас всё уже написано. Больше ничего не надо. Пользуйтесь массивом на здоровье.
Или Вам нужен статический массив? Один на все экземпляры?
Да, мне нужен статический, но такой чтобы в .cpp записать значения каждого элемента.
вот массив
byte inf[10] { 0b11111100, 0b01100000, 0b11011010, 0b11110010, 0b01100110, 0b10110110, 0b10111110, 0b11100000, 0b11111110, 0b11110110 };Надо в .cpp сразу же записать в него значения
при создании экземпляра класса , вызывается его конструктор , там можно и значения массиву присвоить ,или я что то не понимаю ?
Вроде так (в .cpp, прямо в области глобалов): byte seg::inf[10] = { ...тут значения через запятую... };
Спасибо! Отпишусь когда попробую!
Все я понял как. Почитал про статические переменные и функции и понял как сделать. Но у меня вопрос. Нужно ли писать byte seg::inf[10] = {...} в .cpp файле? Вполне вероятно, что я туплю, пожалуйста, не обижайтесь.)
Нужно ли суп ещё солить... Кто же кроме повара знает - нужно или нет.