Здравствуйте, IgorKr, Вы писали:
IK>Здраствйте. Возможно проблема ламерськая, но все же помогите решить.
IK>кусок кода:
IK>IK>class box{
IK>private:
IK> struct objects{
IK> void* obj;
IK> objects* prev;
IK> objects* next;
IK> };
IK> static objects* head; // unresolved external symbol "public: static struct box::objects * box::head" (?head@box@@2PAUobjects@1@A)
IK> unsigned int count;
IK>public:
IK> box(){};
IK> box(unsigned char i){
IK> switch(i){
IK> case 0:{
IK> cars* temp0=new cars;
IK> include((temp0->get_address()));
IK> break;
IK> };
IK>..........
IK>
IK>Ошибочка там выскакивает.
IK>Почему мне надо СТАТИК? Потому что хочу иметь доступ к переменной head во всех объектах класса box(если есть какие то другие идеи, милости прошу, опишите =) ). В этом классе описан список, который сохраняет инфу по созданным объектам других классов. Возможно как то решить эту проблему, но что бы описание структуры оставалось в классе?
IK>Заранее спасибо.
статик переменные нужно инициализировать до определения класса:
objects* box::head = NULL; // инициализация static-членов обязательна даже если обьявлен как private
class box{
private:
struct objects{
void* obj;
objects* prev;
objects* next;
};
static objects* head; // не компилил, но должно работать
unsigned int count;
..........