Я хотел сделать объектно-ориентированный препроцессор для моего языка программирования, который преобразует мой язык в C (например, ранний C++). И я хочу имитировать классы со структурами. И возникает вопрос: как я могу объявить переменную внутри структуры, как это:Объявление переменных внутри структуры в c
typedef struct { //equivalent of class
int a = 5;
int (*sub)(int) = &int_sub; //function of a class, uses an external declared function
} class_name;
Я попытался код, приведенный выше, но компилятор писал:
error: expected ‘:’, ‘,’, ‘;’, ‘}’ or ‘__attribute__’ before ‘=’ token
void (*sub)(int) = &int_sub;
У меня есть два вопроса:
Могу ли я объявить переменную внутри структуры?
Если да, то как?
Вы изобретают свой собственный язык программирования, но не знаю, как объявить-структуру ? Хм ... :) – Lundin
В любом случае, первый вопрос, который вы должны задать здесь: как это имеет смысл для вашего класса использовать внутренне определенную функцию внутри? Это какой-то функтор? – Lundin