環境是VC6.0下面是我寫的程式,總覺得不合適。。但作為小白又不知道怎么辦。。明天就要交了求大神幫忙看看~~
1.結構體該定義在類內還是類外呢?另外呼叫的時候該怎么寫呢,難道要寫成CTargetState::m_vTargetState.m_strTargetPosition.m_dTargetPostionX;這樣嗎?
2.,向Vector中壓資料該怎么寫呢 m_vTargetState.pushback(m_vTargetState) 這樣寫嗎?
3.如果我向vector中壓了五個新的vector,然后想呼叫第三次壓進去的vector的話,該如何呼叫呢?用鏈表?能直接讀嗎?該C++代碼如何實作呢?
#include <vector>
#include<iostream>
#include <iomanip>
using namespace std;
class CTargetState//class declaration
{
public:
private:
struct m_strTargetPosition//笛卡爾坐標系位置
{
double m_dTargetPostionX;
double m_dTargetPostionY;
double m_dTargetPostionZ;
}
struct m_strTargetVelocity//速度
{
double m_dTargetVelocityX;
double m_dTargetVelocityY;
double m_dTargetVelocityZ;
}
struct m_strTargetAccelerate//加速度
{
double m_dTargetAccelerateX;
double m_dTargetAccelerateY;
double m_dTargetAccelerateZ;
}
typedef struct m_strTargetState//定義自用結構型別
{
struct m_strTargetPosition;
struct m_strTargetVelocity;
struct m_strTargetAccelerate;
}StruTargetState;
vector <StruTargetState> m_vTargetState;
};//endof class CTargetState
uj5u.com熱心網友回復:
大神們!~~~~~uj5u.com熱心網友回復:
前3個struct定義可以在外邊,在里邊也無所謂
struct m_strTargetPosition // 笛卡爾坐標系位置
{
double m_dTargetPostionX;
double m_dTargetPostionY;
double m_dTargetPostionZ;
} ;
struct m_strTargetVelocity // 速度
{
double m_dTargetVelocityX;
double m_dTargetVelocityY;
double m_dTargetVelocityZ;
} ;
struct m_strTargetAccelerate // 加速度
{
double m_dTargetAccelerateX;
double m_dTargetAccelerateY;
double m_dTargetAccelerateZ;
} ;
typedef struct m_strTargetState // 定義自用結構型別
{
struct m_strTargetPosition;
struct m_strTargetVelocity;
struct m_strTargetAccelerate;
} StruTargetState;
uj5u.com熱心網友回復:
取第3個元素,c.at(index); 回傳指定index位置處的元素
m_vTargetState.at(2)
http://www.cnblogs.com/cb168/p/4237244.html
uj5u.com熱心網友回復:
謝謝樓上的大神們!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/97305.html
標籤:基礎類
上一篇:求問一下幾個概念的差別,頭檔案,庫檔案和類以及類別庫的區別,還有后綴是dll,".o",".obj",".h"檔案的區別,謝謝!
下一篇:boost編譯出錯 - rule stlport.init ( version ? : headers : libraries * )
