我正在学习Qt4并通过他们的教程进行工作。Qt menuBar()错误
在本教程中:
http://doc.trolltech.com/4.5/mainwindows-menus-mainwindow-cpp.html
他们有下面的代码:
fileMenu = menuBar()->addMenu(tr("&File"));
这使编译器抛出这个错误
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -I. -o main.o main.cpp g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -I. -o MainWindow.o MainWindow.cpp MainWindow.cpp: In member function ‘void MainWindow::createMenus()’: MainWindow.cpp:56: error: ‘((MainWindow*)this)->MainWindow::menuBar’ cannot be used as a function MainWindow.cpp:61: error: ‘((MainWindow*)this)->MainWindow::menuBar’ cannot be used as a function make: *** [MainWindow.o] Error 1
有谁知道我可以修复这个?
[编辑]增加了完整的错误信息与G ++
我有qmake为我运行它。 qmake的-project 的qmake menus.pro 使 克++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/USR /共享/ QT4/mkspecs/Linux的克++ - 一世。 -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I。 -一世。 -一世。 -o MainWindow.o MainWindow.cpp MainWindow.cpp:在成员函数'void MainWindow :: createMenus()'中: MainWindow.cpp:56:error:'((MainWindow *)this) - > MainWindow :: menuBar'不能用作功能 .. [为每行重复] .. make:*** [MainWindow.o]错误1 – Scott 2009-06-18 22:37:38
我认为ephemient是对的Scott。该错误消息意味着编译器认为'menuBar'不是一个函数,这几乎肯定意味着你有一个变量,成员或本地,它也被称为'menuBar',并阻止(遮蔽)同名函数。 – quark 2009-06-18 23:03:19