小编The*_*uzz的帖子

未定义的vtable参考.试图编译一个Qt项目

我正在使用Code :: Blocks 8.02和mingw 5.1.6编译器.我在编译Qt项目时收到此错误:

C:\ Documents and Settings\Fuzz\Desktop\GUI\App_interface.cpp | 33 |未定义引用`vtable for AddressBook'

文件地址Book.h:

 #ifndef ADDRESSBOOK_H
 #define ADDRESSBOOK_H

 #include <QWidget>

 class QLabel;
 class QLineEdit;
 class QTextEdit;

 class AddressBook : public QWidget
 {
     Q_OBJECT

 public:
     AddressBook(QWidget *parent = 0);

 private:
     QLineEdit *nameLine;
     QTextEdit *addressText;
 };

 #endif
Run Code Online (Sandbox Code Playgroud)

文件AddressBook.cpp:

#include <QtGui>
#include "addressbook.h"

AddressBook::AddressBook(QWidget *parent)
     : QWidget(parent)
{
    QLabel *nameLabel = new QLabel(tr("Name:"));
    nameLine = new QLineEdit;

    QLabel *addressLabel = new QLabel(tr("Address:"));
    addressText = new QTextEdit;

    QGridLayout *mainLayout = new QGridLayout; …
Run Code Online (Sandbox Code Playgroud)

c++ qt qmake

51
推荐指数
5
解决办法
8万
查看次数

在linux中如何判断我是否链接到静态或动态库?

我有一个同名的静态和动态库:libclsocket.a和libclsocket.so当我指定要链接到的库时,我只需输入-lclsocket作为库.我的程序符合并运行完美,但我使用的是什么库?静态库还是动态库?我想给我的朋友我的程序,我不确定我是否需要在发布中包含库.C++,codelite,pcLinuxOS 2010

c++ linux static dynamic

14
推荐指数
1
解决办法
7885
查看次数

使用指针传递引用和值

我不明白为什么传递指向函数的指针不会改变传入的数据.如果函数proto看起来像这样:

void func( int *p ); 
Run Code Online (Sandbox Code Playgroud)

和func分配内存到p,为什么不能在函数外部使用?我以为指针是地址?

c++ parameter-passing pass-by-reference pass-by-value

13
推荐指数
2
解决办法
2万
查看次数

如何在C++中分配2D指针数组

我正在尝试使指针指向2D数组指针.什么是语法以及如何访问元素?

c++ pointers allocation multidimensional-array

12
推荐指数
3
解决办法
5万
查看次数

用C++写了一个SDL游戏,想要部署它

我使用C++在SDL中编写了这个非常简单的游戏,现在我想向一些使用Windows的朋友展示它.

我使用Code :: Blocks在Ubuntu 9.10中编写了我的程序.

我想获取我的源代码并制作Windows安装程序,以便他们可以安装和播放它.

我该怎么做呢?

c++ deployment sdl

8
推荐指数
1
解决办法
2061
查看次数

C++涉及向量的内存分配问题

vector< int > vect;
int *int_ptr = new int(10);
vect.push_back( *int_ptr );
Run Code Online (Sandbox Code Playgroud)

我认为每个"新"都需要在某个时候跟"删除",但clear()方法是否清理了这个内存?

这种做同样事情的方法怎么样:

vector< int > vect;
int int_var = 10;
vect.push_back( int_var );
Run Code Online (Sandbox Code Playgroud)

根据我的理解,clear()调用变量析构函数,但本例中的vect.push_back()方法都在向量上推送一个对象,而不是指针.那么使用int指针的第一个例子需要除了clear()以外的东西来清理内存吗?

c++ memory-management vector

5
推荐指数
2
解决办法
1641
查看次数

该地址(0x00000400)= 1024

我在C++工作,我有一个#define VAL 0x00000400.当我设置一个等于define:int value = VAL的变量时; 当我运行调试器时显示变量值= 1024.有人可以解释如何变成1024吗?也许有一些链接到内存地址信息,#define信息或相关的东西.

c++ memory memory-address c-preprocessor

5
推荐指数
2
解决办法
3383
查看次数

实模式内核的 16 位 C 代码

我不知道如何为 16 位实模式编译我的 C 内核。我尝试了各种编译器,但都没有运气。我的引导加载程序只是将原始扇区从软盘(我的内核位于磁盘上的第一个扇区之后)加载到物理内存地址 1000h:0000h,然后跳转到它。如何编译我的 C 内核以在 16 位实模式下工作?

我的基本内核:

void OSmain()
{
    unsigned char *videoram = (unsigned char *) 0xb8000;
    videoram[0] = 65;                                     /* character 'A' */
    videoram[1] = 0x07;                                   /* forground, background color. */

    while( 0 )
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

我尝试过的编译器是 GCC、tinyCC 和 DMC。我的目标是获得一个可以跳转到开始执行的平面二进制文件。

c compiler-construction kernel real-mode 16-bit

5
推荐指数
1
解决办法
3101
查看次数

将所有项目标题放入一个文件HEADERS.h是一个好主意吗?

前几天我和我的导师谈过,并问他这个问题.他告诉我,我可以选择较小的项目,但我正在开始一个国际象棋程序,我想知道Stack Overflow对这个问题的看法.我应该将所有标题包含在一个文件中,还是将它们分开?

c++ header

4
推荐指数
1
解决办法
546
查看次数

调用moveToThread()不会将QObject移动到另一个线程.

让我们functionClass来自一个类QObject.在我的QMainWindow类的类构造函数(它还没有启动任何其他线程)中,我有以下代码:

QThread workThread;
functionClass *functionClassObj = new functionClass;

cout << functionClassObj->thread()->currentThreadId() << endl; // prints 0x16c
functionClassObj->moveToThread( &workThread );
cout << functionClassObj->thread()->currentThreadId() << endl; // prints 0x16c
Run Code Online (Sandbox Code Playgroud)

currentThreadId()如果我打电话,为什么功能打印相同的东西moveToThread()

c++ qt multithreading

4
推荐指数
1
解决办法
1278
查看次数