」之前的預期說明符限定符列表錯誤「我正在嘗試編寫一些代碼來優化我正在編寫的程序的某些Open GL函數,不幸的是,我不完全是C或C++老手,但這就是我爲什麼要做這個項目的一部分!錯誤「結構構造函數
所以我創建一個結構來處理3×3的矩陣,我定義結構如下:
#ifndef MATRIX3BY3_H
#define MATRIX3BY3_H
struct Matrix3by3
{
float ix, jx, kx;
float iy, jy, ky;
float iz, jz, kz;
Matrix3by3() {}
Matrix3by3(const Matrix3by3 &matrix)
{
ix = matrix.ix;
jx = matrix.jx;
kx = matrix.kx;
iy = matrix.iy;
jy = matrix.jy;
ky = matrix.ky;
iz = matrix.iz;
jz = matrix.jz;
kz = matrix.kz;
}
Matrix3by3 (const float _ix, const float _jx, const float _kx,
const float _iy, const float _jy, const float _ky,
const float _iz, const float _jz, const float _kz) :
ix(_ix), jx(_jx), kx(_kx),
iy(_iy), jy(_jy), ky(_ky),
iy(_iz), jx(_jz), kz(_kz) {}
};
#endif
而我得到的錯誤(兩次)
預期說明符qualifier-列表 之前'Matrix3by3'
在第一個構造函數的行上。我試圖四處尋找答案,似乎它不知道這是一種類型的編譯器。所以,我曾嘗試以下,我會去掉內臟爲簡潔:
typedef struct Matrix3by3 { ... };
struct Matrix3by3 { struct Matrix3by3() {} ... };
struct Matrix3by3 { ... } Matrix3by3;
typdef struct Matrix3by3;
struct Matrix3by3 { ... };
哪些是被認爲博客上的所有解決方案和我看到這個錯誤的文章。我也看到它可能是由於循環依賴引起的,但是這個文件沒有包含任何其他內容,並且我甚至刪除了它們,只是爲了不時確定 - 沒有變化。
我可以在Objective-C類中寫這個,我相信,但它可能需要更多的內存和週期,這正是我想要避免的。我唯一能想到的就是我默認設置的一些編譯器/項目設置,這使得我不能使用這種類型的結構。完全可能,因爲我正在學習語言/環境。
任何人可以提供一些幫助嗎?
謝謝!
啊,是的,我看到了這些錯誤。當我把這件事拋出去的時候,已經有一段時間了。事情是,當我看到iPhone開發的例子時,我在其他多個地方看到過這種類型的東西。所以我不確定它爲什麼在那裏工作(甚至在直接下載的例子中),但不適合我。我認爲這是xcode中的一些編譯器/項目設置,但我不確定是什麼。或者我錯過了分號錯誤的結構等效 – Kevek 2010-12-07 12:57:22