smart-pointers

    0

    1답변

    Scott Meyer의 저서에서 공유 포인터를 사용하여 발생하는 오버 헤드의 일부는 뾰족한 개체를 올바르게 파괴하는 데 virutal 함수가 필요하다는 것입니다. 내 질문은 왜? 이것은 가상 소멸자를 갖는 지적 객체의 클래스의 책임이 아니라고 생각합니까?

    3

    4답변

    *을 호출하는 대신 get()을 *과 함께 사용하는 이유는 무엇입니까? 다음 코드를 고려하십시오 auto_ptr<int> p (new int); *p = 100; cout << "p points to " << *p << '\n'; //100 auto_ptr<int> p (new int); *p.get() = 100; cout << "p poi

    2

    2답변

    [] 연산자 또는 ++를 고유 포인터 또는 shared_pointer와 함께 사용할 수 있습니까? 우리가 원시 포인터를 사용할 때 int * a = new int[10]; a[0] = 2; // We can use [] operator; 는 스마트 포인터에 대해 유사한 방법이 있습니까? 언제 사용해야합니까? 그렇다면 왜 그런가요? MultiDimens

    0

    1답변

    클래스 A와 클래스 B를 놓습니다. 클래스 A의 각 인스턴스는 클래스 B의 0에서 N 개의 인스턴스까지 소유합니다. A 인스턴스가 삭제되면 B 인스턴스도 삭제됩니다 . 예를 들어 보기 : shared_ptr<parent>을 가진 class parent { private: vector< unique_ptr<child> > m_children;

    0

    1답변

    최적화 (Animal에서 Dog 상속)을, 그리고 당신은 종종 동물을 기대하지만, 강아지의 인스턴스를 보내는 상황이 Animal 및 Dog. 필자의 특별한 경우에는 동물성 기대 함수 (std::shared_ptr<Animal>)에 강한 포인터 (std::shared_ptr<Dog>)를 던지기도합니다. 함수 매개 변수를 참조 (std::shared_ptr<A

    1

    1답변

    나는 생성자에서 공유 포인터를 받고 약 포인터에 저장하는 클래스가 있지만 어떻게 변환해야하는지 잘 모르겠습니다. class A { public: A(std::shared_ptr<B> Bptr); private: std::weak_ptr<B> m_Bptr; }; 나는 생성자 여부에 전달하기 전에 shared_pt

    1

    1답변

    많은 수의 개체를 std::list에 저장하려고합니다. 다른 유형의 데이터를 저장하려면 이러한 객체가 필요하므로 유형을 파생해야하는 객체를 알려주는 enum 유형의 속성 만 보유하는 기본 클래스에 대한 포인터를 저장합니다. 각각의 기본 목적은 그것이 있어야 입력 알고 있지만, std::list<std::unique_ptr<Base>> list; list.

    2

    1답변

    좋습니다, 참조 카운팅 개념을 사용하여 C++ (매우 기본적인 것)에서 가비지 수집기를 구현하려고하는데 작동하지만 거기에 뭔가 이해할 수없는 것이 있습니다. . GC라는 클래스, 기본적으로 단지 증가와 기준 카운터 스마트 포인터의 역할을 TObject의라는 이름의 클래스를 감소시키는입니다 무엇을 (내가 오버로드 * : 나는이 개 수업을 GC.cpp #inc

    0

    1답변

    std::unique_ptr<>()의 문서에서 포인터 초기화가 나에게 명확하지 않을 때 어떤 일이 발생할 수 있습니다. std::shared_ptr<>()을 할당 할 때 메모리 버퍼를 할당하여 참조 카운터를 처리합니다. 그래서 std::bad_alloc 예외가 발생할 수 있습니다. 고유 포인터를 초기화 할 때 비슷한 일이 발생할 수 있습니까? 나는 그것이

    0

    1답변

    Objective-C 및 자동 참조 계산에 대한 지식이 매우 명확합니다. 그리고 최근에 저는 C + +, Smart Pointer를 배우고 있습니다. 스마트 포인터와 자동 참조 카운팅이 거의 비슷하다는 것을 알게되었습니다. 비록 스마트 포인터와 C++ 및 Objective-C를 사용하는 코드 샘플/예제를 이용한 자동 참조 계산을 나란히 비교할 수는 없지만