Ich initialisiert ein vecotor der Größe 10 und ich füge nur 1 Element und ich möchte überprüfen, wie viele nicht eingefügt werden. Im Moment habe ich so etwas wie diese:Wie überprüft man leere Elemente in Vektor
#include <vector>
#include <iostream>
using std::vector;
using std::cout;
using std::endl;
class VectorCheck
{
private:
vector<char> myVector;
int size;
int PosOfLastElement = 0;
public:
VectorCheck(int Vectorsize):
size(Vectorsize), myVector(Vectorsize)
{
}
int count()
{
int numOfElements = 0;
for(int i=0; i<myVector.size();i++)
{
if(myVector[i] == ' ')
{
numOfElements ++;
}
}
cout << numOfElements << endl;
}
void addElement(char element)
{
for(int i=PosOfLastElement; i<myVector.size();i++)
{
if(myVector[i]= ' ')
{
myVector[i] = element;
PosOfLastElement = i;
break;
}
}
}
};
int main()
{
VectorCheck vectorTest(10);
vectorTest.addElement('a');
vectorTest.count();
}
meine Zählung Funktion zeigt, dass es 0 leere Räume, aber es solle 9. sein, und ich will auch so etwas wie diese if(myVector[i] == nullptr)
zu überprüfen, und es hat nicht kompilieren. Was mache ich hier falsch?
Werfen Sie einen Blick auf 'std :: vector :: capacity' –
Fureeish
@Fureeish ich geprüft und ausprobiert. Es gibt 10 (das ist die Größe des Vektors) –