اطلاعیه

Collapse
No announcement yet.

توضیح این برنامه کوچک و کار :: چیست در برنامه؟

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    توضیح این برنامه کوچک و کار :: چیست در برنامه؟

    سلام دوستان.
    یه کوچولو توضیح و منظور از اینچیه< بعدش کار :: در برنامه زیر چیه!!؟؟
    ممنون
    کد:
    #include "stdafx.h"
    #include "hossein.h"
    
    
    hossein::hossein(void)
    {
    }
    
    
    hossein::~hossein(void)
    {
    }
    به سمت نور خورشيد حرکت کن،تو ميتوني تابش خورشيد رو حس کني ،حتي اگه کور باشي.
    (پيش به سوي هدف)

    #2
    پاسخ : توضیح این برنامه کوچک و کار :: چیست در برنامه؟

    این که شما نوشتی فایل .c یه کد هست. یه کلاس توی .h اون تعریف شده به اسم hossein. این کلاس یه سازنده داره و یه مخرب. پروتوتایپ این تابع ها تو هدر فایل اومده و بادی اون اینجا.
    :: هم به این دلیل استفاده میشه که معلوم شه داریم بادی تابع کدوم کلاس رو مینویسیم! hossein اول برای اسم کلاس هست و دومیش برای اسم تابع. که اینجا چون تابع سازنده هست اسمش با کلاس یکی هست ( و function type هم نداره)
    -> هم کارش شبیه . هست و برای دسترسی به متد های یه شی ولی فرقش اینه که -> زمانی به کار میره که ااره گر اون شی رو داشته باشی.
    [img width=477 height=100]http://www.eca.ir/pic/upload/agazade.png[/img]

    دیدگاه


      #3
      پاسخ : توضیح این برنامه کوچک و کار :: چیست در برنامه؟

      نوشته اصلی توسط hosseinam1370
      سلام دوستان.
      یه کوچولو توضیح و منظور از اینچیه< بعدش کار :: در برنامه زیر چیه!!؟؟
      ممنون
      کد:
      #include "stdafx.h"
      #include "hossein.h"
      
      
      hossein::hossein(void)
      {
      }
      
      
      hossein::~hossein(void)
      {
      }
      کار :: مشخص کردن namespace هستش. هر متغیر یا تابعی در سی پلاس پلاس در یک namespace قرار میگیره که شما وقتی میخواید بهش فراخونی انجام بدید باید حتما namespace اون رو مشخص کنید.
      دلیلش هم این هستش که تو پروژه های بزرگ که چند صد تا فایل باید با هم کامپایل و لینک شن اسم متغیرها قاطی نشه و هر کی بتونه با خیال راحت کار خودش رو انجام بده.

      دیدگاه


        #4
        پاسخ : توضیح این برنامه کوچک و کار :: چیست در برنامه؟

        نوشته اصلی توسط shahinbahari
        این کلاس یه سازنده داره و یه مخرب.
        چرا باید داشته باشه؟
        چه نیازی میشه؟
        ممنون دوستان
        به سمت نور خورشيد حرکت کن،تو ميتوني تابش خورشيد رو حس کني ،حتي اگه کور باشي.
        (پيش به سوي هدف)

        دیدگاه


          #5
          پاسخ : توضیح این برنامه کوچک و کار :: چیست در برنامه؟

          نوشته اصلی توسط hosseinam1370
          چرا باید داشته باشه؟
          چه نیازی میشه؟
          ممنون دوستان
          بایدی وجود نداره. هردو این ها اختیاری هستند. حالا کارش چیه؟! تو سازنده شما به متد های اون کلاس مقدار اولیه میدید و راه اندازی اولیه رو انجام میدید. تو مخرب که موقع از بین رفتن کلاس صدا میشه منابعی(مثل رم و توکن دسترسی به سخت افزار) که اشغال کردید رو آزاد میکنید و متغییر هایی که ساختید رو پاک میکنید.....
          یه مثال بزنیم! شما یه کلاس ساختید که موقع ساخت یه رشته به عنوان آرگومان میگیره. این آرگومان رو با تابع سازنده باید وارد کلاس کرد. ساختنش هم این شکلی میشه:
          MyClass *cl=new MyClass("someText"

          علاوه بر گرفتن این متن توی تابع سازنده یه آرایه هم برای بافر کردن مقدار دهی میکنید تا بقیه متد ها ازش استفاده کنند.
          آخر کد میرسیم به:
          delete cl;

          حالا تابع مخرب صدا میشه و توی اون باید اون آرایه که مقدار دهی کردیم رو پاک کنیم. بعدش شی کلا از حافظه پاک میشه. یادتون باشه تابع مخرب هیچ وقت آرگومان نمیگیره! هیچ وقت چند ریختی نمی تونه باشه و داشتنش اختیاری هست.
          [img width=477 height=100]http://www.eca.ir/pic/upload/agazade.png[/img]

          دیدگاه

          لطفا صبر کنید...
          X