我对C ++还是很陌生,但仍有很多东西要学,这是我想为自己做的事情:
我尝试创建一个简单的程序,如果用户键入“ start”,它将播放音乐(音频文件),如果用户随时键入“ stop”,则停止音乐,并且使用 PlaySound (来自 WinMM.Lib )。我还想添加字幕以开始逐行显示与音乐aa同步的内容,并让用户随时输入开始/停止。
我创建了void text(string x)函数,该函数将与void music()一起开始,但是我不知道当用户键入“ stop”时如何终止 text()函数,它只会停止音乐,但文字仍然显示。
注意:我使用timercpp代替了sleep()来让用户随时输入内容。另外,用户不必专门键入“停止”,也不能只是“开始”,而现在就这样。
#include <iostream>
#include <windows.h>
#include <string>
#include <stdlib.h>
#include <conio.h>
#include "timercpp.h"
using namespace std;
int music(string x);
void text(string x);
string x;
int main()
{
do{
cout<<"Type start / stop..."<<endl;
cin>>x;
music(x);
text(x);
cin.clear();
}while(x!="quit");
}
int music(string x)
{
system("cls");
if(x=="start"){
cout<<" Music ON "<<endl;
PlaySound("*Path*/cpp/audio.wav", 0, SND_FILENAME|SND_LOOP|SND_ASYNC);
return 0;
}
else{
cout<<" MUSIC OFF..."<<endl;
PlaySound(NULL, 0, SND_FILENAME);
}
}
void text(string x)
{
if(x=="start"){
{
Timer t = Timer();
t.setTimeout([&]()
{
cout<<"// I got summer on my mind," << endl;}, 2500);
t.setTimeout([&]()
{
cout<<"/ Nowhere else though," << endl;}, 7000);
}
感谢您的帮助!