MFC로 UI를 만들다가
내가 만든 클래스로 std::vector 를 이용하려던 중
c:\program files (x86)\microsoft visual studio 10.0\vc\include\xmemory(48): error C2558: class 'CFrameSet' : 복사 생성자를 사용할 수 없거나 복사 생성자가 'explicit'으로 선언되었습니다.
이런 에러가 뜬다. 여기서 'CFrameSet'은 내가 만든 클래스의 이름이다.
vector를 쓰기 위해 복사생성자를 만들어두긴 했는데 깜빡 잊고 파라미터에 const를 빼먹은 것이 문제였다.
FrameSet.h
1 2 3 4 5 6 7 8 9 10 11 12 13 | #pragma once class CFrameSet { public : CFrameSet( void ); CFrameSet( const CFrameSet& dup); ~CFrameSet( void ); ... public : void operator =( const CFrameSet& dup); }; |
FrameSet.cpp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | #include "StdAfx.h" #include "FrameSet.h" CFrameSet::CFrameSet( void ) : ... { ... } CFrameSet::CFrameSet( const CFrameSet& dup) { * this = dup; } CFrameSet::~CFrameSet( void ) { ... } void CFrameSet::operator =( const CFrameSet& dup) { ... } |
'Development > Failure Log' 카테고리의 다른 글
"\ndk-build.cmd": Launching failed (0) | 2013.01.01 |
---|---|
openCV webcam 다중 연결 (0) | 2012.12.21 |
java.io.IOException: 현재 연결은 사용자의 호스트 시스템의 소프트웨어의 의해 중단되었습니다 (1) | 2012.09.24 |
The type HttpServer is not accessible due to restriction on required library... (2) | 2012.09.21 |
Not a valid class name (0) | 2012.09.15 |