我是C ++的全新人,因为我习惯于处理,但对于一个项目,我必须在openFrameworks中创建一些C ++框架。我试图在每次触发条件时加载电影。我生成一个随机数,然后视频播放器应该加载包含该数字的电影。像这样:
else if ( myByte > 130 ){
float ranNumb = ofRandom(1, 5);
int rounded = (int)ranNumb;
cout << rounded << "\n";
myPlayer.loadMovie("movies/testMovie_", rounded,".mp4");
}
显然最后一行在C ++ / OpenFrameworks中不起作用。我习惯于处理,在那里我只使用“+”运算符将字符串与舍入变量结合起来。我该怎么做呢?
答案 0 :(得分:1)
希望C ++ 11可用,所以你可以这样做:
myPlayer.loadMovie(std::string("movies/testMovie_") + std::to_string(rounded) + ".mp4");
答案 1 :(得分:1)
openFrameworks提供了ofToString()
函数,可将int
转换为字符串。您可以像这样使用它:
myPlayer.loadMovie("movies/testMovie_" + ofToString(rounded) + ".mp4");
文档:ofToString
答案 2 :(得分:1)
我发现std :: stringstream很有用。
std::string pfn; // derived path file name
{
std::stringstream ss;
ss << "movies/testMovie_" << rounded;
pfn = ss.str();
}
cout << pfn << "\n";
myPlayer.loadMovie(pfn);