由於我無法正確地設計我的課我達到一個地步,我需要的是這樣的:對未初始化的對象使用std :: bind是否安全?
struct A
{
A(function< void(string&) cb >): callback(cb) {}
function< void(string&) > callback;
template <std::size_t T>
void func(string& str) { ... }
}
int main(){
vector<A> items = {
A(bind(&A::func<1>, items[0], _1)),
A(bind(&A::func<2>, items[1], _1)),
...
}
這是安全使用?如果沒有,是否有其他選擇?
那麼......你試圖解決什麼問題,這是你的解決方案? – GManNickG
您已經發現的主要問題:*無法正確設計*。你需要努力,而不是解決方案。正如@GManNickG已經提到的那樣,如果您提供了您正在嘗試解決的**問題**,那麼您可能會得到提供更好設計的答案。做這項工作有不同的方法,但這不會使設計更好。 –