«c++11» 태그된 질문

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


5
C ++ 11에서 유니 코드는 얼마나 잘 지원됩니까?
C ++ 11이 유니 코드를 지원한다고 읽었습니다. 그것에 대한 몇 가지 질문 : C ++ 표준 라이브러리는 유니 코드를 얼마나 잘 지원합니까? 합니까는 std::string무엇을해야합니까? 어떻게 사용합니까? 잠재적 인 문제는 어디에 있습니까?
183 c++  unicode  c++11 

2
C ++ 11에서 안전한 부울 관용구가 더 이상 사용되지 않습니까?
이 답변은 @R입니다. Martinho Fernandes 는 안전한 부울 관용구가 C ++ 11에서 적절하게 사용되지 않는다는 것을 보여줍니다. explicit operator bool() const; 답변의 표준 인용에 따르면 §4 [conv] p3: 일부 임시 변수 (§8.5)에 대해 T선언 T t=e;이 올바르게 구성된 경우에만 표현식 e를 암시 적으로 유형으로 변환 할 수 있습니다 t. 특정 …

6
지도를 반복하면서 제거하는 방법?
반복하면서지도에서 어떻게 제거합니까? 처럼: std::map<K, V> map; for(auto i : map) if(needs_removing(i)) // remove it from the map 내가 사용 map.erase하면 반복자가 무효화됩니다.
177 c++  map  c++11 

4
constexpr에서 std :: string을 사용할 수 있습니까?
C ++ 11, Ubuntu 14.04, GCC 기본 툴체인 사용 . 이 코드는 실패합니다 : constexpr std::string constString = "constString"; 오류 : constexpr 변수 'constString'의 'const string {aka const std :: basic_string}'유형은 리터럴이 아닙니다 ... 왜냐하면 'std :: basic_string'은 사소한 소멸자를 갖지 않기 때문입니다. 그것은 사용할 수 있습니다 std::stringA의 constexpr? (분명히 …

3
std :: atomic은 정확히 무엇입니까?
나는 그것이 std::atomic<>원자 적 객체 라는 것을 이해 합니다. 그러나 어느 정도까지 원자? 내 이해에 따르면 작업은 원자가 될 수 있습니다. 물체를 원자로 만드는 것은 정확히 무엇을 의미합니까? 예를 들어 다음 코드를 동시에 실행하는 두 개의 스레드가있는 경우 : a = a + 12; 그렇다면 전체 작업이 add_twelve_to(int)원 자성입니까? 아니면 …

2
배열에 shared_ptr : 사용해야합니까?
에 관한 작은 쿼리 shared_ptr입니다. shared_ptr배열을 가리키는 것을 사용하는 것이 좋습니다 ? 예를 들어 shared_ptr<int> sp(new int[10]); 그렇지 않다면 왜 안됩니까? 내가 이미 알고있는 한 가지 이유는를 늘리거나 줄일 수 없기 때문 shared_ptr입니다. 따라서 배열에 대한 일반적인 포인터처럼 사용할 수 없습니다.
172 c++  c++11  shared-ptr 

2
컴파일러가 일반 함수보다 람다를 더 잘 최적화 할 수있는 이유는 무엇입니까?
그의 책에서 The C++ Standard Library (Second Edition)Nicolai Josuttis는 람다는 컴파일러가 일반 함수보다 더 잘 최적화 할 수 있다고 말합니다. 또한 C ++ 컴파일러는 일반적인 기능보다 람다를 더 잘 최적화합니다. (213 페이지) 왜 그런 겁니까? 인라인에 관해서는 더 이상 차이가 없어야한다고 생각했습니다. 내가 생각할 수있는 유일한 이유는 컴파일러가 람다와 더 …


5
operator &가 오버로드 될 때 어떻게 안정적으로 객체의 주소를 얻을 수 있습니까?
다음 프로그램을 고려하십시오. struct ghost { // ghosts like to pretend that they don't exist ghost* operator&() const volatile { return 0; } }; int main() { ghost clyde; ghost* clydes_address = &clyde; // darn; that's not clyde's address :'( } clyde의 주소 는 어떻게 얻 습니까? 모든 유형의 객체에 …

6
C ++ 11, 14, 17 또는 20은 파이에 대한 표준 상수를 도입합니까?
C와 C ++의 숫자 pi에는 다소 어리석은 문제가 있습니다. 멀리로 나는 알고 M_PI에 정의 된 math.h표준에 의해 필요하지 않습니다. 새로운 C ++ 표준은 표준 라이브러리에서 쌍곡선 함수 std::hermite및 std::cyl_bessel_i다른 난수 생성기 등 의 복잡한 수학을 많이 도입했습니다 . '새로운'표준 중 어떤 것이 파이에 대한 상수를 가져 왔습니까? 그렇지 않은 경우-왜? …

2
공개 친구 교환 회원 기능
copy-and-swap-idiom에 대한 아름다운 대답 에는 약간의 도움이 필요한 코드가 있습니다. class dumb_array { public: // ... friend void swap(dumb_array& first, dumb_array& second) // nothrow { using std::swap; swap(first.mSize, second.mSize); swap(first.mArray, second.mArray); } // ... }; 그리고 그는 메모를 추가 우리는 std :: swap을 우리 유형에 특화하고, 무료 기능 스왑과 함께 …

6
한 클래스에서 멤버 함수와 함께 일반 std :: function 객체 사용
한 클래스의 경우 하나의 map저장 std::function객체 에 동일한 클래스의 멤버 함수에 대한 일부 함수 포인터를 저장하려고 합니다. 그러나 나는이 코드로 시작하자마자 실패합니다. class Foo { public: void doSomething() {} void bindFunction() { // ERROR std::function<void(void)> f = &Foo::doSomething; } }; 내가받을 error C2064: term does not evaluate to a function …

3
기본 생성자와 소멸자에서 "= default"는 "{}"과 어떻게 다릅니 까?
나는 원래 이것을 소멸자에 대한 질문으로 만 게시했지만 이제 기본 생성자를 고려하고 있습니다. 원래 질문은 다음과 같습니다. 클래스에 가상의 소멸자를 제공하고 싶지만 컴파일러가 생성하는 것과 동일한 소멸자를 제공하려면 =default다음을 사용할 수 있습니다 . class Widget { public: virtual ~Widget() = default; }; 그러나 빈 정의를 사용하여 타이핑을 줄이면 동일한 효과를 …


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