试图在C中做对象定位,但我不明白。初始化OOP中的指针C-lang
我想有一个结构与功能和自身的引用。我在main之前有这个,但编译器抱怨。我如何解决它? 编译器抱怨: “初始值元素不是常量”,“未知类型名SENSOR_OBJECT”
void config_time_base(alt_u32, void*);
void init_measurement(QUEUE *q);
void read_accelerometerX(QUEUE *q);
void update(QUEUE *q);
typedef struct SENSOR_CLASS
{
char description[80];
alt_u32 x_origo;
alt_u32 y_origo;
alt_u32 time_base;
QUEUE queue;
QUEUE *q;
void (*configure_time_base)(alt_u32, SENSOR_OBJECT*);
void (*reset_samples_vector)(QUEUE*);
void (*read_sensor)(QUEUE*);
void (*update_graph)(QUEUE*);
SENSOR_OBJECT* this;
}SENSOR_OBJECT;
QUEUE q1,q2,q3,q4,q5;
QUEUE* q11 = &q1;
SENSOR_OBJECT accelorometerX =
{ "Accelerometer x",
50, 50,1,q1,q11,
config_time_base,
init_measurement,
read_accelerometerX,
update,
&accelorometerX
};
编译器抱怨什么? –
“初始化元素不是常量” “unknown typename SENSOR_OBJECT” –
不要在注释中发布基本信息。请改编你的问题。 –