2012-05-20 77 views
0

我在最後一行收到錯誤「atan'中遇到的循環繼承問題」。我很困惑,因爲它只發生在那一行,而不是main()。我只包含在cpp文件中,而不是其他地方。由於錯誤只在類函數中,所以我想我在做類錯誤的事情,但不知道它是什麼。C++循環繼承和類

*我只是把它作爲一個例子來說明它的工作原理。實際上並沒有達到目的。

//.h文件

#ifndef CIRCLE_H_ 
#define CIRCLE_H_ 


    class Circle { 
    public: 
     Circle(int minVertex=12); 
     ~Circle(); 
    private: 
     int pixels; 
    }; 

#endif /* CIRCLE_H_ */ 

// CPP文件

#include <circles.h> 
#include <cmath> 
using namespace std; 

int main(){ 
    double pi = abs(9); 
} 


Circle::Circle(int minVertex = 12) { 
    pixels = 1150; 
    double pi = atan(0) *2; // problem here 
} 
+0

另外,我想補充一點,這是一個偉大的網站具有良好的社區。迄今爲止幫助我很多。非常感謝! –

回答

4
class Circle: Circle 

你有一個類,從它自己繼承,怎麼可能工作?

+0

嘿改變了,雖然cmath功能仍然無法正常工作。任何其他奇怪的問題? –

+0

@Blaine Chatman:現在有什麼錯誤? –

+0

編輯nevermind。它現在有效。謝謝。 –

2
class Circle: Circle { 

您是否試圖從Circle繼承Circle

儘量簡單

class Circle { 
+0

謝謝!對不起的問題抱歉。想想我需要更多地閱讀C++。 –