개체의 전체 복사본을 원할 때 딥 복사 포인터가 필요하다는 것을 알고 있습니다. 혼란에는 다음이 포함됩니다 (완전히 작성된 예제). #include "stdafx.h"
#include <string>
class a
{
public:
a::a(std::string _sz) :
m_sz(_sz)
,m_piRandom(n
나는 아래의 18 행에있는 코드가 "복사해야 할 멤버 중 하나가 참조 일 때 암시 적으로 정의 된 대입 연산자를 사용하는 것이 좋지 않기 때문에"형식이 잘못되었다고 말했습니다. 나는 그것을 이해할 수 없었다. 참조를 복사 할 수없는 이유는 무엇입니까? 16 번 라인이 합법적 인 이유는 무엇입니까? 16 번 줄은 18 번 줄과 매우 유사합니다. 복사 생성자가
몇 가지 클래스 (C++)에 대한 단위 테스트를 작성 중이며 복사 생성자 및 대입 연산자에 대한 단원 테스트를 작성하는 데 문제가 있습니다. 기본 문제는 프로그래머가 클래스에 멤버를 추가 한 다음 c'ctor 및/또는 operator =를 업데이트하는 것을 잊어 버리는 것입니다. 나는 물론의 라인을 따라 단위 테스트를 작성할 수 class MyClass()
제 질문은 복사 생성자가없는 개체를 반환하는 방법에 대한 것입니다. 예를 들어, 힙에 앉아있는 bigResource이 있다고 가정 해 봅시다. unique_ptr을 사용하여 추적합니다. 이제 나는이 자원의 소유권을 애벌레에게 전합니다. 그런 다음 CaterpillarWithBigResource이 있습니다. 이제 어느 시점에서이 CaterpillarWithB
복사 생성자가 호출되지 않고 이유가 확실하지 않습니다. 여기 내 코드 : template <typename T>
class SmartPtr
{
public:
explicit SmartPtr(T *p) : m_p(p) { cout << "ctor" << endl; }
SmartPtr(const SmartPtr& p) : m_
빠른 진행 C++ 수정 과정을 진행 중입니다. 몇 가지 기본 개념을 닦으려고. 아래 프로그램을 실행하면 두 가지 문제가 발생합니다. 1. 복사 CC가 어떤 이유로 호출되지 않습니다. 2. testCC() 함수가 종료 된 후 프로그램이 작동하지 않습니다. 도움을 주시면 감사하겠습니다. class A
{
public:
A()
{
학교 과제에 문제가 있습니다. 스포츠 경기에서 경쟁자를 추적하는 시스템을 만들어야합니다. 나는 기본 클래스 경쟁자와 그로부터 파생 된 두 클래스, 즉 Professional과 Exerciser을 가지고있다. 그리고 나서 Contender **contenders을 포함하는 레지스터 클래스가 있습니다. 그리고이 클래스에 대한 복사 생성자를 만들어야하지만 어떻게
val-grind에 의해이 코드가 발견 된 메모리 누수 문제를 해결하려고합니다. 필자는이 코드를 작성하지 않았지만 원래 코드를 ofstream을 사용하여 filebuf 및 ostream을 사용하지 않도록 축소했습니다. 문제는 다른 코드의 가상 getter 메서드에서 공유되고 호출되는 ofstream 포인터를 올바르게 삭제하는 방법을 알아낼 수 없다는 것입니