我知道這個問題的常見答案,但出於某種原因,當我在Code :: Blocks上使用正確的語法時出現錯誤,我會發佈一個示例來顯示我不虛張聲勢:額外資格成員GCC
class BulletPlacer : sf::Drawable
{
public:
BulletPlacer();
BulletPlacer(const unsigned Quantity);
~BulletPlacer();
};
這是hpp文件的一小部分。
BulletPlacer::BulletPlacer()
:Amount(0), Min(0)
{}
BulletPlacer::BulletPlacer(const unsigned Quantity)
:Amount(Quantity), Min(0)
{
Bullet shot;
ShotVec.reserve(Amount);
for(unsigned i = 0; i < Amount; ++i)
{ ShotVec.push_back(shot); }
}
BulletPlacer::~BulletPlacer() { PolVecV.clear(); ShotVec.clear(); }
這就是cpp。它編譯得很好,直到我開始重構類,並且我得到了所有方法的錯誤。我也會得到其他沒有任何地位的錯誤,並且我會讓他們擁有課堂上的所有功能。我甚至重新下載了GCC版本才發現它給了我完全相同的結果。
這裏的錯誤日誌的簡化版本:
error: extra qualification 'BulletPlacer::' on member 'BulletPlacer' [-fpermissive]|
error: 'BulletPlacer::BulletPlacer()' cannot be overloaded|
error: with 'BulletPlacer::BulletPlacer()'|
連帶重複這樣的所有功能。這是非常煩人的,因爲我不能僅僅因爲這一點而在我的SFML遊戲中前進,並且僅僅因爲編譯器生我的氣就檢查一個300行文件來查找可能的錯誤是毫無意義的。不,沒有任何被「BulletPlacer」使用的文件得到這個。
error: cannot define member function 'BulletPlacer::Enemy::Enemy' within 'BulletPlacer'
當類甚至不包括文件...
我使用GCC 4.7:
而且還有更糟糕的,一個完全無關的類獲取類似的還有一些東西。 1
在此先感謝您提供的任何幫助。
缺少大括號和/或分號的頭文件中的類或結構? –
yup,當有很多隨機看錯誤時,通常是它的1個非常瑣碎的標點符號問題。 –
顯示的第一個錯誤是什麼? –