这个错误:
"1>cl : Command line error D8021: invalid numeric argument '/Wno-deprecated'"
Run Code Online (Sandbox Code Playgroud)
通过 MSVC 编译器构建 VTK + Qt 项目时发生。我认为标志设置存在一些问题。以下是我的 CMakeList.txt
cmake_minimum_required(VERSION 2.8)
PROJECT(QtImageViewer)
IF(NOT VTK_BINARY_DIR)
FIND_PACKAGE(VTK)
INCLUDE(${VTK_USE_FILE})
ENDIF(NOT VTK_BINARY_DIR)
SET(QT_QMAKE_EXECUTABLE ${VTK_QT_QMAKE_EXECUTABLE} CACHE FILEPATH "")
SET(QT_MOC_EXECUTABLE ${VTK_QT_MOC_EXECUTABLE} CACHE FILEPATH "")
SET(QT_UIC_EXECUTABLE ${VTK_QT_UIC_EXECUTABLE} CACHE FILEPATH "")
FIND_PACKAGE(Qt4 REQUIRED)
INCLUDE(${QT_USE_FILE})
SET (SRCS main.cxx)
INCLUDE_DIRECTORIES( ${QT_INCLUDE_DIR} ${QT_QTGUI_INCLUDE_DIR} ${QT_QTCORE_INCLUDE_DIR})
ADD_EXECUTABLE( qtimageviewer MACOSX_BUNDLE ${SRCS})
TARGET_LINK_LIBRARIES( qtimageviewer
QVTK
${QT_LIBRARIES}
vtkRendering
vtkGraphics
vtkIO
vtkCommon
)
Run Code Online (Sandbox Code Playgroud)
请解释如何解决此错误?
我在头文件中的命名空间中定义了一个类,如下所示
#ifndef _c1_
#define _c1_
namespace classspace
{
class Aclass;
}
class Aclass
{
//body
};
#endif _c1_
Run Code Online (Sandbox Code Playgroud)
我将这个标题添加到main.cpp并在main()中创建了一个对象但是它的返回错误是undefined class 'classspace::Aclass'
我的主要文件
void main()
{
classspace::Aclass b;
}
Run Code Online (Sandbox Code Playgroud)
当我把课定义为
class classspace::Aclass
{
//body
};
Run Code Online (Sandbox Code Playgroud)
错误已解决.我在Qt mainwindow文件中看到了第一种方法:
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
Run Code Online (Sandbox Code Playgroud)
工作没有任何错误.在第一种方法中我的错误是什么?