У меня есть класс, который выглядит примерно так:
class In {
public:
struct Member{
In name;
};
In() {}
private:
static const int aCapacity = 16;
static const int oCapacity = 16;
};
Когда я пытаюсь скомпилировать его, я получаю сообщение об ошибке: error #71: incomplete type is not allowed
Этот код компилируется с помощью компилятора Microsoft. Хотите знать, если кто-нибудь знает способ сделать эту работу для TI?
AFAIK, TI использует GCC 4.8.3.
Кстати, настоящий класс — это шаблон, но я уверен, что здесь нет проблем.
Это не должно компилироваться: компилятор не может вывести структуру Member
так как он не проанализировал весь класс In
еще.
Просто объявите вложенные struct
и определите это после определение In
:
class In {
public:
struct Member;
In() {}
private:
static const int aCapacity = 16;
static const int oCapacity = 16;
};
struct In::Member{
In name;
};