클래스내 함수의 값을 바꾸는 것에 대한 질문입니다.
글쓴이: eunhyeon / 작성시간: 목, 2009/01/08 - 6:03오후
http://doc.trolltech.com/3.3/listviews-example.html 에 있는 예제를 사용하여, 목록을 출력해주는 프로그램을 작성하고 있습니다.
class MessageHeader { public: MessageHeader( const QString &_name, const QString &_src, const QString &_result, const QDateTime &_datetime ) : mname( _name ), msrc( _src), mresult( _result ), mdatetime( _datetime ) {} MessageHeader( const MessageHeader &mh ); MessageHeader &operator=( const MessageHeader &mh ); QString name() { return mname; } QString result() { return mresult; } QString src() { return msrc; } QDateTime datetime() { return mdatetime; } void setResult( const QString &result) { mresult = result; } protected: QString mname, msrc, mresult; QDateTime mdatetime; };
result 값을 바꾸어줄 필요가 있어서,
void setResult( const QString &result) { mresult = result; }
로 멤버 함수를 만들고,
msg->header().setResult("Result");
로 값을 설정해 주었습니다. 그런데, 값이 변하지 않고, 계속 원래 값을 유지하더군요. 어떻게 해야 값을 바꿀 수 있을까요?
void setResult( const QString &result) { mresult = result; printf(mresult); }
라고 하면 "Result"가 콘솔에 출력되었습니다만, 여전히 데이터는 예전 값을 가지고 있더군요.
Forums:
댓글 달기