«std-function» 태그된 질문

7
표준 :: 기능 대 템플릿
C ++ 11 덕분 std::function에 functor 래퍼 제품군을 받았습니다 . 불행히도, 나는 이러한 새로운 추가 사항에 대한 나쁜 것들만을 계속 듣고 있습니다. 가장 인기있는 것은 그들이 엄청 느리다는 것입니다. 나는 그것을 테스트했으며 템플릿과 비교할 때 정말 빨랐습니다. #include <iostream> #include <functional> #include <string> #include <chrono> template <typename F> float calc1(F …

4
std :: function 및 std :: bind : 그것들은 무엇이며 언제 사용해야합니까?
펑터가 무엇이며 언제 std알고리즘 과 함께 사용해야하는지 알고 있지만 C ++ 11 FAQ 에서 Stroustrup이 그들에 대해 말하는 것을 이해하지 못했습니다 . 누구든지 무엇이 무엇 std::bind이고 std::function언제 사용되어야 하는지 설명하고 초보자를위한 몇 가지 예를 제공 할 수 있습니까?

3
C ++ 11에서 std :: function이 비어 있는지 제대로 확인하는 방법은 무엇입니까?
std::function비어 있는지 제대로 확인하는 방법이 궁금합니다 . 이 예를 고려하십시오. class Test { std::function<void(int a)> eventFunc; void registerEvent(std::function<void(int a)> e) { eventFunc = e; } void doSomething() { ... eventFunc(42); } }; 이 코드는 MSVC에서 잘 컴파일되지만 코드 doSomething()를 초기화하지 않고 호출하면 eventFunc분명히 충돌합니다. 그것은 예상되었지만의 가치가 무엇인지 궁금합니다 eventFunc. …

4
std :: function이 과부하 해결에 참여하지 않는 이유는 무엇입니까?
다음 코드는 컴파일되지 않는다는 것을 알고 있습니다. void baz(int i) { } void baz() { } class Bar { std::function<void()> bazFn; public: Bar(std::function<void()> fun = baz) : bazFn(fun){} }; int main(int argc, char **argv) { Bar b; return 0; } 때문에 std::functionIS 내가 읽을로, 오버로드 확인을 고려하지 말라고 이 다른 …

1
std :: function const 정확성
다음과 같이 호출 가능한 유형이 있다고 가정하십시오. struct mutable_callable { int my_mutable = 0; int operator()() { // Not const return my_mutable++; } }; 참고 mutable_callable비 const가이 operator()수정 멤버 변수 것을 ..... 이제 std::function내 유형을 벗어난 것으로 가정하십시오 . std::function<int()> foo = mutable_callable{}; 이제 나는 이것을 할 수 있습니다 : …

2
명시 적으로 반환 유형을 명시하더라도 람다에 대한 호출은 모호합니다.
람다의 유형을 결정할 수있는 경우 오버로드 된 함수는 두 함수를 모두 가져 와야합니다 std::function((잘못된 경우 수정하십시오). 질문은 다음과 같습니다. 정의 되었습니까? ( [&]() -> Type {}) 현재 솔루션의 경우 참조 기준 캡처가 필요하므로 코드에 논리가 포함되어 있습니다. 다음 예제는 문제점을 설명합니다. #include <iostream> #include <string> #include <functional> void do_some(std::function<void(int)> thing) …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.