Пример кода
От: maks1180  
Дата: 25.12.21 11:13
Оценка:
Вот такой код не получается скомпилировать, если не выносить функции в другой файл. На строку "m_v = B::GetV()" gcc ругается.
Хотя я не понимают, почему gcc не хочет в 2 этапа это сделать:
1) сначала пробежаться и составить объявления всех классов и функций
2) скомпилировать функции

class B;

class A {
public:
void DoSomething() {
m_v = B::GetV();
}
private:
int m_v;
};

class B {
public:
static int GetV() { return 1; }
void Do() {
A a; a.DoSomething();
}
};

Может я что-то не понимаю ?
===============================================
(реклама, удалена модератором)
Отредактировано 25.12.2021 11:15 maks1180 . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.