我有興趣嘗試創建自定義類型,然後使用點語義訪問其成員。例如:我該如何構建這種類型的接口
Class A{ //simplified, omitting constructors and other methods
private:
float numbers[3];
public:
float x(){ return numbers[0]; }
float y(){ return numbers[1]; }
float z(){ return numbers[2]; }
}
所以我可以做這樣的事情:
A a;
//do stuff to populate `numbers`
float x=a.x;
但我也想使元素numbers
左值,所以我可以做這樣的事情:
A a;
a.y=5; //assigns 5 to numbers[1]
我該怎麼做這個設置方法?
class A {public:float x,y,z; };'? – BoBTFish 2013-05-14 09:53:29
因爲「數字」的實際大小可能有所不同;我將使用模板來設置其大小 – johnbakers 2013-05-14 09:54:30
那麼您將如何知道要使用的名稱? – BoBTFish 2013-05-14 09:55:11