unresolved external symbol

Знаю, что такой вопрос уже был задан ранее до меня, но данные ответы там, мою проблему не решают. При запуске программы и попытке записи в news.Read_Bufer.out[n_byte] возникает ошибка unresolved external symbol (news / _news). При этом, если я попробую взять массив из любого другого класса из другого hpp, при условии, что я добавлю #include и extern, по нему ошибок не будет. Если я скопирую код объединения union с массивом из другого hpp в мой и попробую это запустить, изменив только названия выдаст такую же ошибку.

Пробовал менять названия, потому что боялся, что компилятор может из-за них выдавать ошибку. Засовывал struct в union, короче крутил-вертел, но толку 0, ошибка остается.

//hpp

#ifndef __newscreen_HPP__
#define __newscreen_HPP__

class newscreen {
public:
int variable_func(int, int);
void init_func(void);


struct ByteSeq {
unsigned char FHH;
unsigned char FHL;
unsigned char BC;
unsigned char CMD;
unsigned char ADRSH;
unsigned char ADRSL;
unsigned char NUM;
unsigned char BYTE1H;
unsigned char BYTE1L;
unsigned char BYTE2H;
unsigned char BYTE2L;
};

union dataRxBuf {
unsigned char out [10];
ByteSeq in;
};

dataRxBuf Read_Bufer;
};

#endif

//cpp

#include newscreen.hpp

//какие-то функции
extern newscreen news;

__interrupt void IRQ_UART_4_RX(void){
static unsigned char n_byte = 0;
unsigned char = byte;
byte = RDR04;   //recieving data from MCU

if (n_byte <= 10){
news.Read_Bufer.out[n_byte] = byte;
n_byte++;
}
}

Ответы (0 шт):