Unklare Compiler Fehlermeldung
-
Habe folgendes geschrieben:
class Data { public: static const int bufferSize = 22*sizeof(int)+3*sizeof(double)+100*sizeof(char); char buffer[bufferSize]; }; class DataBuffer { public: std::vector<Data> data; ...
In der CPP-Datei mache ich dann folgendes:
FILE* file; file = fopen( ss.str().c_str(), "wb"); for( size_t i = 0; i < data.size(); ++i ) fwrite( data[i].buffer, Data.bufferSize, 1, file ); //<--Zeile 47 fclose(file);
Allerdings erhalte ich folgende Fehlermeldung, wobei mir nicht klar ist, was der Compiler meint:
DataBuffer.cpp: In member function ‘void DataBuffer::flush()’:
DataBuffer.cpp:47: error: expected primary-expression before ‘.’ tokenWas mache ich falsch?
-
Versuchs mal so
fwrite( data[i].buffer, Data::bufferSize, 1, file ); //<--Zeile 47
-
Oh Gott, der Baum vor lauter Wäldern...
-
fwrite( data[i].buffer, data.bufferSize, 1, file );
geht auch.