Geht es nicht eleganter?
-
Ich möchte unter DirectX Screenshots machen, screenshot 1 soll dann 1.bmp heißen usw., aber das ist doch echt übel:
// Variable einer Klasse int screenshots = 0; // In der Methode stringstream tmp; tmp << ++screenshots; string file = tmp.str()+".bmp"; D3DXSaveSurfaceToFile(file.c_str(), D3DXIFF_BMP, tmpSurface, 0, 0)
Kann man sich tmp und file nicht irgendwie schenken? Gibts da nichts eleganteres?
-
stringstream tmp; tmp << ++screenshots << ".bmp"; D3DXSaveSurfaceToFile(tmp.str().c_str(), D3DXIFF_BMP, tmpSurface, 0, 0)
-
char file[10]; sprintf(file,"%i.bmp",++screenshots); D3DXSaveSurfaceToFile(file, D3DXIFF_BMP, tmpSurface, 0, 0);
-
char buf[10]; D3DXSaveSurfaceToFile((LPCTSTR)(CString(itoa(++screenshots,buf,10))+CString(".bmp")), D3DXIFF_BMP, tmpSurface, 0, 0);
ich denke das sollte so klappen
-
Ich würde es mit
D3DXSaveSurfaceToFile(getNextFilename().c_str(), D3DXIFF_BMP, tmpSurface, 0, 0);
machen...
Für die Konvertierung kannste Dir mal boost::lexical_cast anschaun.MfG Jester