C++ 어식으로 구조를 잡아야 하는지 궁금합니다.

paeksj98의 이미지

안녕하세요.

c로 만들었든걸 c++로 바꾸면서 변형 및 추가를 하고 있습니다.

c++를 해보질 않아서 구조를 어떻게 잡아야 할지 몰라서 질문 드립니다.

새로 만드는 거면 쉽게 하겠는데 기존에 만들어진거에 끼워 넣다보니 힘이 드네요.

1. mainclass--> sub1class

2. mainclass -->sub2class-->sub3class

3. progressbar

이런식으로 구조가 되어있는데 여기에 sub1, sub2, sub3이 진행되는 사황을 프로그래스바로

표현해주려고 합니다.처음에 sub1에서 프로그래스바가 시작해서 30%까지 가고 sub2에서 70까지 가고 sub3에서 100까지 가게 하려고 합니다.

근데 저런 경우 1,2,3에서 progressbar class를 가져다가 쓸수 있나요..???

지금 제가 보기에는 mainclass에 프로그래스바 함수를 두고 1,2,3에서 각각 이벤트를 main으로 날려서 main의 progress바를 제어 해야 할것 같은데

이방법이 맞는 건가요.

제금 처리 하는 문제는 특별 케이스로 main넣지 말고 1,2,3과 같은 레벨에 코딩이 되었으면 더 좋을 것 같은데 방법이 있나요..??

제가 최대한 자세히 적는다고 적었는데 이해가 가실지 모르겠습니다. 감사합니다.

익명 사용자의 이미지

답변이 아닙니다만..

기존 C로 잘돌던걸.. 왜 어렵게.. C++ 그것도.. 객체지향? 으로( 이걸또 쉽다고 말하는이들도 이해가 안가고)

바꾸는지..그자체가 이해가 불가..

snowall의 이미지

-->기호가 뭘 뜻하는 건지 모르겠네요. 상속인지 호출인지...

아무튼, progress bar에 접근할 방법이 있다면 그게 main에 있든 어디에 있든 상관 없겠죠. 어차피 progressbar에 해당하는 객체는 하나일텐데, 그럼 그냥 progress bar를 호출해서 몇%인지 나타내라고 하면 됩니다.

mainclass에서 뭘 하고 싶다면, -->으로 이어진 하위 클래스에서 상위 클래스의 뭔가를 부르고, 그러다가 mainclass에 도달하면 그때 progress bar를 수정하는 방식으로 이뤄져야겠네요.

잘 모르겠으면
1. C++를 기초부터 공부하시고
2. 그냥 새로 만드세요.

피할 수 있을때 즐겨라! http://melotopia.net/b

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.