的元素我有一個C++類c_image包含指針類的元件c_pixel一個矢量:指針到一個C++
class c_image {
public:
vector<shared_ptr<c_pixel>> pixel;
...
};
類c_pixel元素包含的元素Z型號的型號爲:
class c_pixel {
public:
double Z;
...
};
然而,它們擴展了類c_pixel_pv,其中包含PV,雙類型的三個元素的數組:
class c_pixel_pv : public c_pixel {
public:
double pv[3];
...
};
類c_image還具有如下功能:濾波器
vector<double> c_image::filter(???) {
...
};
這將作爲輸入指向元素Z或pv [0]或pv [1]或pv [2]。
但我不知道如何指向這些元素。我甚至不知道是否可以指出,例如,只有pv [0]元素。我不知道如何開始解決這個問題。有誰能夠幫助我?
如果函數是z或pv [0]或...,函數的行爲會不一樣嗎? –
它不會只是'雙*'嗎?畢竟,'Z'或'pv [..]'都是雙打! – CinCout
你不能有一個「成員指針」,它可以指向「可能在成員內部或可能不是」(注意'pv [0]'不是'c_pixel_pv'的成員,只有'pv')。您的問題會引發很多其他問題,例如:像素爲什麼共享?什麼是共享這些像素的圖像?是否有一點可以包含'c_pixel'和'c_pixel_pv'的圖像? – molbdnilo