嗨大家即時通訊使用winapi和我想做一個在三維正方形即時通訊定義的要點,以使他們與功能和我一直在嘗試3個功能,但我不能讓他們工作,我得到同樣的錯誤在他們3。 <不能將struct **轉換爲const POINT *作爲參數?
的錯誤說
In member function `void Cube::Show(void)':|
cannot convert `const Cube::Show()::POINT3D**' to `const POINT*'
for argument `2' to `BOOL Polygon(HDC__*, const POINT*, int)'|
錯誤使用或者多邊形功能或polybezier或折線指向時,即時通訊
PLZ任何幫助將真正理解
void Cube::Show(void)
{
typedef struct point3d
{
double x;
double y;
double z;
} POINT3D;
POINT3D Face1[] = {
{ 20.0,-20.0,-20.0},
{-20.0,-20.0,-20.0},
{-20.0, 20.0,-20.0},
{ 20.0, 20.0,-20.0}
};
POINT3D Face2[] = {
{-20.0,-20.0,-20.0},
{-20.0,-20.0, 20.0},
{-20.0, 20.0, 20.0},
{-20.0, 20.0,-20.0}
};
POINT3D Face3[] = {
{ 20.0, 20.0, 20.0},
{-20.0, 20.0, 20.0},
{-20.0,-20.0, 20.0},
{ 20.0,-20.0, 20.0}
};
POINT3D Face4[] = {
{ 20.0,-20.0, 20.0},
{ 20.0,-20.0,-20.0},
{ 20.0, 20.0,-20.0},
{ 20.0, 20.0, 20.0}
};
POINT3D Face5[] = {
{ 20.0,-20.0, 20.0},
{-20.0,-20.0, 20.0},
{-20.0,-20.0,-20.0},
{ 20.0,-20.0,-20.0}
};
POINT3D Face6[] = {
{ 20.0, 20.0,-20.0},
{-20.0, 20.0,-20.0},
{-20.0, 20.0, 20.0},
{ 20.0, 20.0, 20.0}
};
POINT3D *Faces[] = {Face1,Face2,Face3,Face4,Face5,Face6};
Rectangle(this->_hdc,this->DrawArea.left,this->DrawArea.top,this->DrawArea.right,this->DrawArea.bottom);
Polygon(_hdc,Faces,6);
/*BeginPath(_hdc);
PolyBezier(Faces,6);
EndPath(_hdc);*/
//Polyline(_hdc,Faces,6);
}
我們需要比這更多的信息。什麼是_hdc?以及Rectangle()和Polygon()如何定義?另外,我非常確定'POINT3D * Faces [] = {Face1,Face2,Face3,Face4,Face5,Face6}'是無效的語法。你爲什麼使用一個結構來代替你的點而不是類? – Falmarri 2010-08-30 03:29:05
呵呵,我認爲結構只是更容易爲這種情況下,但我也可以使用該和多邊形和矩形是winapi函數已經宣佈我沒有讓他們:S和HDC以及它的HDC的WINAPI – Makenshi 2010-08-30 03:31:26
以及我可以只使用窗戶。 h庫,所以我不知道是否回答你的問題,所以即時通訊嘗試製作3d-2d的東西lol – Makenshi 2010-08-30 03:35:24