«c++11» 태그된 질문

C ++ 11로 컴파일해야하는 코드에이 태그를 사용하십시오 (C ++ 14 이상에서 도입 된 기능을 사용하지 않음).

5
인라인 네임 스페이스 란 무엇입니까?
C ++ 11은 inline namespaces를 허용 하며, 모든 멤버도 자동으로 둘러싸고 namespace있습니다. 나는 이것의 유용한 적용을 생각할 수 없다-누군가 inline namespace가 필요한 상황 과 가장 관용적 인 해결책이 있는 상황에 대한 간략하고 간결한 예를 줄 수 있습니까? (또한 a namespace가 inline하나의 파일로 선언되었지만 다른 파일에있을 수있는 모든 선언이 선언되지 않은 …

8
C ++ 11 역 범위 기반 for-loop
범위 기반 for-loop와 반대로 컨테이너를 반복 할 수 있도록 반복자의 방향을 바꾸는 컨테이너 어댑터가 있습니까? 명시 적 반복자를 사용하여 이것을 변환합니다. for (auto i = c.begin(); i != c.end(); ++i) { ... 이것으로 : for (auto i = c.rbegin(); i != c.rend(); ++i) { ... 이것을 변환하고 싶습니다 : for …
321 c++  c++11  ranged-loops 



5
멤버 함수로 스레드 시작
std::thread인수를 사용하지 않고을 반환하는 멤버 함수 로을 구성하려고 합니다 void. 작동하는 구문을 알 수 없습니다. 컴파일러는 무엇이든 불평합니다. 실행 spawn()하는 a std::thread를 반환 하도록 구현하는 올바른 방법은 무엇입니까 test()? #include <thread> class blub { void test() { } public: std::thread spawn() { return { test }; } };

8
C ++에서 make_shared와 normal shared_ptr의 차이점
std::shared_ptr<Object> p1 = std::make_shared<Object>("foo"); std::shared_ptr<Object> p2(new Object("foo")); 많은 Google 및 stackoverflow 게시물이 여기에 있지만 make_shared직접 사용하는 것보다 더 효율적인 이유를 이해할 수 없습니다 shared_ptr. 누군가 make_shared가 얼마나 효율적 인지 이해할 수 있도록 객체가 생성되고 작업이 수행되는 단계별 순서를 설명 할 수 있습니까 ? 위의 예를 참조로 제공했습니다.
276 c++  c++11  shared-ptr 

1
“int main () {(([] () {}) ());}”은 어떻게 C ++에 유효합니까?
나는 최근에 다음과 같은 난해한 코드를 보았습니다. int main(){(([](){})());} 더 읽기 쉽게하려면 다음과 같이 다시 포맷하십시오. int main(){ (([](){})()); // Um... what?!?! } 그러나 (([](){})())유효한 코드가 어떻 습니까? 함수 포인터 구문처럼 보이지 않습니다. 연산자 오버로드 트릭이 될 수 없습니다. 코드는 그대로 컴파일됩니다. Google은이 모든 기호 검색에 큰 도움이되지 않았습니다. 그러나 …
271 c++  c++11  lambda  syntax 

10
참조 또는 값으로 shared_ptr을 전달해야합니까?
함수가 shared_ptr(부스트 또는 C ++ 11 STL에서) 가져 가면 전달합니까? const 참조로 : void foo(const shared_ptr<T>& p) 또는 값으로 : void foo(shared_ptr<T> p)? 나는 그것이 더 빠를 것이라고 생각하기 때문에 첫 번째 방법을 선호합니다. 그러나 이것이 실제로 가치가 있습니까? 아니면 추가 문제가 있습니까? 선택해야 할 이유를 알려 주시거나 문제가 해결되지 …
270 c++  c++11  boost  shared-ptr 

16
C ++에 가비지 수집기가없는 이유는 무엇입니까?
가비지 수집의 장점으로 인해이 질문을하지 않습니다. 내가 묻는 주된 이유는 Bjarne Stroustrup이 C ++이 특정 시점에 가비지 수집기를 가질 것이라고 말했다는 것을 알고 있기 때문입니다. 그렇게 말하면서 왜 추가되지 않았습니까? C ++에 대한 가비지 수집기가 이미 있습니다. 이것이 "한 것보다 더 쉬운 말"유형의 것 중 하나입니까? 아니면 추가되지 않은 다른 …



8
일치하는 함수 포인터를 호출하기 위해 튜플 "풀기"
std::tuple다양한 수의 값 으로 저장하려고 하는데 나중에 저장된 유형과 일치하는 함수 포인터를 호출하기위한 인수로 사용됩니다. 해결하기 위해 고심하고있는 문제를 보여주는 간단한 예를 만들었습니다. #include <iostream> #include <tuple> void f(int a, double b, void* c) { std::cout << a << ":" << b << ":" << c << std::endl; } template …

8
"범위 기반 for 루프"에서 작동하도록 사용자 정의 유형을 만드는 방법은 무엇입니까?
요즘 많은 사람들처럼 C ++ 11이 제공하는 다양한 기능을 시도해 왔습니다. 내가 가장 좋아하는 것 중 하나는 "범위 기반 for 루프"입니다. 나는 이해: for(Type& v : a) { ... } 다음과 같습니다. for(auto iv = begin(a); iv != end(a); ++iv) { Type& v = *iv; ... } 그리고 그것은 표준 …

8
std :: unique_ptr <T>가 T의 전체 정의를 알아야합니까?
헤더에 다음과 같은 코드가 있습니다. #include &lt;memory&gt; class Thing; class MyClass { std::unique_ptr&lt; Thing &gt; my_thing; }; Thing유형 정의가 포함되지 않은 cpp에이 헤더를 포함 시키면 VS2010-SP1에서 컴파일되지 않습니다. 1&gt; C : \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ include \ memory (2067) : 오류 C2027 …

12
to_string은 std의 멤버가 아닙니다 .g ++ (mingw)
나는 의미를 위해 단어가 무작위로 번쩍 거리는 작은 어휘 기억 프로그램을 만들고 있습니다. Bjarne Stroustroup이 알려주 듯이 표준 C ++ 라이브러리를 사용하고 싶지만 게이트 밖에서 겉보기에 이상한 문제가 발생했습니다. long정수를 std::string파일에 저장할 수 있도록 정수 를 변경하고 싶습니다 . 나는 to_string()똑같이 고용 했다. 문제는 g ++ (--‍version 플래그에 언급 된 …
245 c++  c++11  g++  mingw  tostring 

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.