LINUX.ORG.RU

Глобальный класс


0

0

Всем Пивет!!! Возникла проблема при обьявлении глобального класса В одном модуле определяю класс: к примеру, extern class A: public QDialog { public: A(){}; }a;

В другом обьявляю:

A a;

На что получаю ошибку: QPaintDevice: Must construct a QApplication before a QPaintDevice Причем, без наследования QDialog ошибки нет. Кто-нить может мне сказать в чем сдесь проблема?


дык тебе же все написали в ошибке

либо объект класса QApplication объявлен после объявления объекта класса A, либо объект класса QApplication вообще не объявлен глобально

aton
()

Мля .... вот так лоханулся!! Спасибо за помощь!!!

Sad
() автор топика
Ответ на: комментарий от aton

> ну и что ты понаписал? конструктор для 'а' будет вызван до того как 
вызовется main

Почему? Вроде всё нормально..



[../vmk2004/v04bvs/test]% cat main.cc
#include <iostream>

class CMyClass
{
        public:
                CMyClass(char* str)
                {
                        std::cout << str << endl;
                }
};

int main(int argc, char *argv[])
{
        std::cout << "First\n";
        CMyClass c(argv[0]);
        std::cout << "Second\n";
}
[../vmk2004/v04bvs/test]% g++ main.cc -o test
[../vmk2004/v04bvs/test]% ./test
First
./test
Second
[../vmk2004/v04bvs/test]%

Legioner ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.