我是C++的新手。那麼我有box.cpp和circle.cpp文件。在我解釋我的問題,我想給你自己的定義:在其他類構造函數中初始化類對象
在box.cpp
class Box
{
private:
int area;
public:
Box(int area);
int getArea() const;
}
在circle.cpp現在
#include "box.h"
class Circle
{
private:
int area;
Box box;
public:
Circle(int area, string str);
int getArea() const;
const Box& getBoxArea() const;
}
,你可以在Circle類看我有一個整數值和Box對象。在Circle構造函數中,我很容易將該整數值分配給區域。
的一個問題是,我給出一個字符串,它分配給框對象
因此,我所做的圈構造內部是:
Circle :: Circle(int area, string str)
{
this->area = area;
// here I convert string to an integer value
// Lets say int_str;
// And later I assign that int_str to Box object like this:
Box box(int_str);
}
我的目的是訪問這兩個Circle區值和圓形對象面積值。 最後我寫了函數const Box & getBoxArea()const;像這樣:
const Box& getBoxArea() const
{
return this->box;
}
因此我沒有得到正確的值。我在這裏錯過了什麼?
您的代碼甚至不應該編譯。 'Box'需要一個默認的構造函數。請張貼一些現實的代碼。 – juanchopanza
[在另一個類對象中初始化一個對象(在對該構造函數進行一些操作之後)]的可能的重複。(http://stackoverflow.com/questions/19345054/initializing-a-object-in-an-another- class-object-after-doing-some-operations-o) – juanchopanza