有沒有辦法使用的一種方式=類型分配的,而不是語法如下:C++分配成員的目標函數,類成員函數
void triggerAttack() { adsr.triggerAttack(); }
我希望做一些事情,如:
void triggerAttack() = adsr.triggerAttack
std::function<void()> triggerAttack = adsr.triggerAttack
void(*triggerAttack)() = adsr.triggerAttack
但沒有任何東西編譯!
示例代碼:
class LinearADSR
{
public:
void triggerAttack() { }
};
class JerobeamBlubb : public gen
{
public:
void triggerAttack() { adsr.triggerAttack(); }
protected:
LinearADSR adsr;
};
你想達到什麼目的? 1)失敗,因爲語法無效2)和3)失敗,因爲你有成員函數,而不是正常的(並且你使用一個實例來獲取它們) – Rakete1111
只需簡單地繼承某些函數,所以我不必將每個功能從一個類重寫到另一個類。我沒有使用子類,因爲我只需要幾個函數。但我可能會重複這種事情,這是不可避免的。所有類別都需要定製。 –