Я играл в arround с помощью std :: function и std :: bind, и я заметил что-то неинтуитивное, и я хотел бы лучше понять его.Понимание std :: function и std :: bind
Например:
void fun()
{
}
void hun(std::string)
{
}
int main()
{
function<void(int)> g = &fun; //This fails as it should in my understanding.
function<void(int)> f = std::bind(fun); //This works for reasons unknown to me
function<void(int, std::string)> h = std::bind(hun); //this doesn't work
return 0;
}
Как можно связать function<void(int)>
к функции, которая является недействительным(). Тогда я мог бы позвонить f (1) и получить удовольствие(). Я хотел бы понять, как это делается. В результате внедрения этой Microsoft Visual Studio 2012 меня потеряли в море нечитаемых макросов. поэтому я задаю этот вопрос здесь.
Я использую vs2012 Express edition. – Alex
вы можете порекомендовать такой сайт? – Alex
Компиляция с _clang_ и _g ++ _ обоими. +1, интересная ситуация. – soon