|
우와~ 너무 고맙습니다.
그런데 죄송하지만 하나만 더 여쭤볼께요.
RePositFrameByMsModeInfo형의 RPFByMS class를 만들어서, RePositFrameByMsModeInfo의 초기화가 아니라, RPFByMS 클래스를 초기화 하고 싶거든요?
RePositFrameByMsModeInfo 형의 클래스를 여러개 만들고 싶어서요.
답변 한 번만 더해주시면 고맙겠습니다. T.T
임문환 님이 쓰신 글 :
:
: 생성자를 만드시고 그 안에서 맴버변수를 초기화하면 됩니다.
: class RePositFrameByMsModeInfo {
: public:
: RePositFrameByMsModeInfo();
: .
: .
: .
: };
:
:
: RePositFrameByMsModeInfo::RePositFrameByMsModeInfo()
: {
: EnableFlag = false;
: MouseDownFlag= false;
: }
:
:
:
: 빌더매니아 님이 쓰신 글 :
: : //--------------------------------------
: : class RePositFrameByMsModeInfo {
: : public:
: : bool EnableFlag;
: : bool MouseDownFlag;
: : int WhichPart;
: : TRect Frame;
: : DynamicArray<TColor> BoxSave;
: : int saveCount;
: : TPoint Origin;
: : };
: : //--------------------------------------
: : 이런 클래스를 선언했답니다.
: :
: : 실은 델파이에 있는 다음과 같은 레코드를
: : //--------------------------------------
: : type
: : RePositFrameByMsModeInfo = record
: : EnableFlag : Boolean;
: : MouseDownFlag : Boolean;
: : WhichPart : Integer;
: : Frame : TRect;
: : BoxSave : array of TColor;
: : saveCount : Integer;
: : Origin : TPoint;
: : end;
: : //--------------------------------------
: : 빌더로 포팅하려는 거지요. --;
: :
: : 그런데 델파이에서는 이 레코드를 다음과 같이 초기화 하거든요.
: : RPFByMS : RePositFrameByMsModeInfo =
: : (EnableFlag: False;
: : MouseDownFlag:False );
: :
: :
: : 그래서 유사하게 빌더에서 다음과 같이 하니 에러가 납니다.
: : RePositFrameByMsModeInfo RPFByMS = {
: : false, //EnableFlag
: : false, //MouseDownFlag
: :
: : };
: :
: : TRect Frame;
: : DynamicArray<TColor> BoxSave;
: : TPoint Origin;
: : 와 같은 멤버들때문인것 같습니다. 일반 정수형이나 불린형만 있을때는 사실 구조체 초기화 하는 것처럼 해도 에러가 나지 않았었거든요.
: :
: : 고수님들.. 도와주세요..
: :
|