我在編譯這段代碼時遇到了問題。我正在使用OS X 10.6上的Eclipse進行編譯。這個問題似乎只在使用矢量時纔會發生。我似乎無法使用push_back功能。每次嘗試時,我都會收到「預期的構造函數,析構函數或類型轉換之前的錯誤」。令牌」。下面是我的一小段代碼:Push_back在C++中使用向量時導致錯誤
#include <GLUT/glut.h>
#include <vector>
#include <stdlib.h>
#include <iostream>
#include <math.h>
using namespace std;
enum Colour {BLACK =0, RED=1, BLUE=2, GREEN=3, PURPLE=4, ORANGE=5, CYAN=6, BLANK=7};
class Point {
private:
GLfloat xval, yval;
public:
Point(float x =0.0, float y = 0.0){
xval=x;
yval=y;
}
GLfloat x() {return xval;}
GLfloat y() {return yval;}
};
class LinePoint {
private:
Point p;
Colour cNum;
public:
LinePoint(Point pnt = Point(0,0), Colour c = BLACK){
cNum = c;
p = pnt;
}
Point getPoint(){return p;}
Colour getColour(){return cNum;}
};
float turtleScale = 20;
Point turtlePos = Point(300./turtleScale,200./turtleScale);
LinePoint* lp = new LinePoint(turtlePos,BLACK);
vector<LinePoint*> lines;
lines.push_back(lp);
我不知道這是否會有什麼用Eclipse是如何設置,但它似乎也,如果我使用位於here代碼,代替我矢量調用,它仍然編譯相同的錯誤。
而我正式是一個noob :)感謝您的幫助,我是新來的C++,並不知道這個事實。 – fastrack20 2010-01-30 00:57:00
技術上其餘的都是*初始化*。作業也不被允許。 – UncleBens 2010-01-30 01:28:30
@UncleBens - 這就是我的意思,感謝您的更正 – 2010-01-30 01:41:52