мне надо получить доступ к public переменным одного класса, через другой класс. причём я не знаю обьекта первого класса.
простенький пример:
////////////////////////////////////////////////////////////////////////////////
///////////////////
#include <qapplication.h>
#include <qmainwindow.h>
class First : public QMainWindow
{
public:
static First *App;
int config;
First(QWidget *parent = 0):QMainWindow(parent)
{
App = this;
config = 100;
}
};
#define perem ((First::App)->config)
class Second
{
public:
Second()
{}
void todo()
{
int getconfig = perem;
printf("\nWe got %d\n", getconfig);
}
};
int main(int argc, char **argv)
{
QApplication a(argc, argv);
First *mw = new First;
mw->show();
a.setMainWidget(mw);
return a.exec();
}
////////////////////////////////////////////////////////////////////////////////
///////////////////
[root@localhost class]# ./done
g++ -c -pipe -Wall -W -O2 -fomit-frame-pointer -pipe -march=i586 -mcpu=pentiumpro -DQT_NO_DEBUG -I/usr/lib/qt3/mkspecs/default -I. -I. -I/usr/lib/qt3/include -o main.o main.cpp
g++ -o class main.o -L/usr/lib/qt3/lib -L/usr/X11R6/lib -lqt -lXext -lX11 -lm
main.o(.text+0x6b): In function `main':
: undefined reference to `First::App'
collect2: ld returned 1 exit status
make: *** [class] Ошибка 1
в krusader похожий пример прекрасно работает. Они там получают доступ ко многим public переменным.
как бороться ?
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Как программно завершить Qt4 приложение? (2007)
- Форум Рисование в Qt 4 (2007)
- Форум linux gtkmm c++ g++: class Gtk::Application’ has no member named ‘make_window_and_run’ (2022)
- Форум Cygwin+Gtk - чего не хватает этой заразе? (2007)
- Форум Qt: Console (2010)
- Форум QT 4.x - ошибка линковки (2008)
- Форум Ошибки в Qt связаные с Q_OBJECT ... помогите плз!!! (2003)
- Форум Простая программа на Qt4 слетает в seg fault. Помогите пожалуйста (2006)
- Форум простая программа на QT4 и segmentation fault (2006)
- Форум Qt и русски (2003)