Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/130.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果功能已经启动,如何停止? 我对C++很陌生,还有很多东西要学,这里有一些我想为自己做的事情:_C++_Function_Terminate - Fatal编程技术网

如果功能已经启动,如何停止? 我对C++很陌生,还有很多东西要学,这里有一些我想为自己做的事情:

如果功能已经启动,如何停止? 我对C++很陌生,还有很多东西要学,这里有一些我想为自己做的事情:,c++,function,terminate,C++,Function,Terminate,我尝试创建一个简单的程序,如果用户键入“开始”,它将播放音乐(音频文件),如果用户键入“停止”,它将随时停止音乐,并且它使用PlaySound(来自WinMM.Lib)工作。我还想添加字幕,开始逐行显示与音乐同步的内容,让用户随时键入start/stop 我创建了void text(string x)函数,该函数将与void music()一起启动,但我不知道当用户键入“stop”时如何终止text()函数,它只停止音乐,但文本仍然显示 注意:我使用而不是sleep()让用户随时输入。此外,用户

我尝试创建一个简单的程序,如果用户键入“开始”,它将播放音乐(音频文件),如果用户键入“停止”,它将随时停止音乐,并且它使用PlaySound(来自WinMM.Lib)工作。我还想添加字幕,开始逐行显示与音乐同步的内容,让用户随时键入start/stop

我创建了void text(string x)函数,该函数将与void music()一起启动,但我不知道当用户键入“stop”时如何终止text()函数,它只停止音乐,但文本仍然显示

注意:我使用而不是sleep()让用户随时输入。此外,用户不必专门键入“停止”,它只是不能是“开始”,现在就这样吧

#包括
#包括
#包括
#包括
#包括
#包括“timercpp.h”
使用名称空间std;
int音乐(弦乐x);
无效文本(字符串x);
字符串x;
int main()
{
做{

您需要关注的主题是线程,它基本上是一种允许您的程序同时执行多个任务的方式(以及同步这些不同的任务).然而,这是一个非常大的主题,我不确定这是否是初学者应该关注的问题。你还有很多其他更基本的东西需要学习。我支持john,我认为多线程的介绍并不容易,因为多线程并不容易。然而,这似乎达到了你想要的效果:复制解释了h现在,您可以通过windows API异步播放声音。您调用
PlaySound
,函数立即返回,而声音将继续播放。稍后,您可以再次调用函数停止播放声音,将其作为dupe关闭,但重新打开,因为建议的dupe()这只是答案的一半……所以我在这一点上无能为力?:/您需要研究的主题是线程,这基本上是一种允许您的程序同时执行多项任务(以及同步这些不同任务)的方法.然而,这是一个非常大的主题,我不确定这是否是初学者应该关注的问题。你还有很多其他更基本的东西需要学习。我支持john,我认为多线程的介绍并不容易,因为多线程并不容易。然而,这似乎达到了你想要的效果:复制解释了h现在,您可以通过windows API异步播放声音。您调用
PlaySound
,函数立即返回,而声音将继续播放。稍后,您可以再次调用函数停止播放声音,将其作为dupe关闭,但重新打开,因为建议的dupe()答案只有一半…所以我现在无能为力/
#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);
}