Ich schreibe einen Code für 3D-Welt zu 2D-Projektion und wie ich versuche, Koordinaten in meinen Vektoren zurückzuschieben, gibt es mir diesen Fehler, dass es keine übereinstimmende Funktion zu nennen gibt Std :: Vektor.Keine passende Funktion, um std :: vector anzurufen
#include <X11/Xlib.h>
#include "draw.h"
#include "points.h"
#include "unistd.h"
#include <math.h>
#include <vector>
void draw(Display* d, Window w, GC gc)
{
std::vector<float> xpoints;
xpoints.push_back (-1.0, -1.0, 1.0, 1.0, -1.0, -1.0, 1.0, 1.0);
std::vector<float> ypoints;
ypoints.push_back (1.0, 1.0, 1.0, 1.0, -1.0, -1.0, -1.0, -1.0);
std::vector<float> zpoints;
zpoints.push_back (-1.0, 1.0, 1.0, -1.0, -1.0, 1.0, 1.0, -1.0);
for (;;)
{
XClearWindow(d, w);
for (unsigned int c = 0; c < xpoints.size(); c++)
{
XDrawLine(d, w, gc, xpoints.at(c), ypoints.at(c), xpoints.at(c+1), ypoints.at(c+1));
}
XFlush(d);
usleep(16666);
}
}
Ich sehe nicht, wo Sie den Vektorkopf einfügen? add '' include ' –
EdChum
Auch wenn Sie Fehler haben, sollten Sie sie in Ihre Frage und die Zeile, die es auftritt – EdChum
Bitte unterschreiben Sie Ihre Fragen nicht. Lesen Sie auch [fragen]. – dandan78