我是C++和Qt的新手.我的问题是,我创建了一个新类,但它没有被编译.所以编译器说:"未解析的对象......".这是标题:
#ifndef TRANSITIOUSPLAYER_H
#define TRANSITIOUSPLAYER_H
#include <QtMultimedia>
class TransitiousPlayer
{
public:
TransitiousPlayer();
TransitiousPlayer(const TransitiousPlayer &other);
~TransitiousPlayer();
void play();
};
Q_DECLARE_METATYPE(TransitiousPlayer)
#endif // TRANSITIOUSPLAYER_H
Run Code Online (Sandbox Code Playgroud)
类:
#include "transitiousplayer.h"
...
void TransitiousPlayer::play(){
QMediaPlayer* player = new QMediaPlayer(this);
QMediaPlaylist* playlist = new QMediaPlaylist(player);
playlist->playlist->addMedia(new QString("sh.mp3"));
player->setPlaylist(playlist);
player->play();
}
Run Code Online (Sandbox Code Playgroud)
在mainwindow.cpp中:
TransitiousPlayer player;
player.play();
Run Code Online (Sandbox Code Playgroud)
在主要我也打电话:
qRegisterMetaType<TransitiousPlayer>();
Run Code Online (Sandbox Code Playgroud)
如果我只是尝试编译transitiousplayer.cpp,它会说:"目标debug/transitiousplayer.obj不存在."