저는 C++과 Qt를 처음 사용합니다. 내 문제는, 내가 새로운 수업을 만들었고 컴파일되지 않는다는 것입니다. 그래서 컴파일러는 "unresolved Object in ..."라고 말합니다.QtCreator : 대상 디버그/... obj가 없습니다.
이#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
클래스 :
이 mainwindow.cpp에서#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();
}
: 주에서
TransitiousPlayer player;
player.play();
내가 또한 전화 : 이 헤더이다 나는 경우
qRegisterMetaType<TransitiousPlayer>();
만 transitiou 컴파일하려고 splayer.cpp, 다음과 같이 말합니다 : "대상 디버그/transitiousplayer.obj가 없습니다."
qmake를 사용하는 경우 프로젝트 파일을 업로드 할 수 있습니까? 어떤 OS입니까? OT : Fwiw, "Transitious"는 제가 아는 한 영어 단어가 아닙니다. – lpapp
파일을 수동으로 메이크 파일에 추가했고 저에게 도움이되었습니다. OS는 Windows이고 Qt 생성자를 사용하고 있습니다. Qt Creator의 C++ 클래스에 대한 속성이 있습니까? 어쩌면 "컴파일"확인란? "Transitious"는 환상적인 이름과 작업 제목입니다. – theporenta
소스 및 헤더 파일을 추가 할 수 있으며 백그라운드 qmake 파일에 자동으로 추가됩니다. 프로젝트 파일을 직접 여는 경우'HEADERS' 변수와'SOURCES' 변수가 입력되어 있음을 알 수 있습니다. 또한 수동으로 사용자 정의 할 수 있으며 프로젝트 트리를 재생성하는 동안 자동으로 다시 구문 분석됩니다. 필요한 파일이 거기에 추가되었는지 확인하십시오. – lpapp