ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 9 از 9
  1. #1
    2013/03/18
    babol
    1,387
    652

    کلاس در سی ++ چیست؟!!

    سلام دوستان.
    دارم سی ++ یاد میگیرم رسیدم به کلاس ها.
    میخاستم یه درک درستی از کلاس بهم بدید.
    اصلا چه نیازیه ما بیایم یه شی رو نمونه بسازیم ؟؟!
    اصلا کجا استفاده میشه کلاس؟؟
    فقط میخام بدونم که کلاس چیه منظور سازندگان سی ++ از این کار چی بود.
    یه بدی که دارم تا هدف این کار رو نفهمم هرچی یاد بگیرم در مورد این موضوع،باز یادم میره :cry2:.
    در هر صورت ممنون میشم یه توضیح مفهومی بدید دوستان.
    ممنون
    به سمت نور خورشيد حرکت کن،تو ميتوني تابش خورشيد رو حس کني ،حتي اگه کور باشي.
    (پيش به سوي هدف)
  2. #2
    2013/02/04
    298
    6

    پاسخ : کلاس در سي ++ چيست؟!!

    يه بدي که دارم تا هدف اين کار رو نفهمم هرچي ياد بگيرم در مورد اين موضوع،باز يادم ميره :cry2:.
    در هر صورت ممنون ميشم يه توضيح مفهومي بديد دوستان.
    اصلا هم بدي نيست و خيلي خوبه.ضمنا کلاس ها منحصرا در مورد سي نيست و همه زبون هاي برنامه نويسي کلاس دارند.
    ترجيح مي دم استايد پاسختون رو بدن اگه کسي جوابتون رو نداد يکم مطالعه مي کنم بهت مي گم.
    ولي توي برق خيلي نيازي به تعريف کلاس توي سي نداريم مگه اين که اپليکيشن ها مون تو قالب گجت باشن که بيشتر مربوط به کامپيوتري ها ميشه.
    اسمم بابا برقيه مي دونين کارم چيه دلم مي خواد همه جا که با کمک شما
    مصرف برق کم بشه تا برقمون قطع نشه
    مصرف بي رويه کار خيلي بديه موقع پخش کارتون برق تلويزيون
    اگه يه دفعه بره حوصله مون سر مي ره
    هرگز نشه فراموش لامپ اضافي خاموش
  3. #3
    2011/03/18
    تهران
    574
    2

    پاسخ : کلاس در سي ++ چيست؟!!

    خيلي ساده بخوام بگم يه روش براي دسته بندي توابع و متغيير هاييه که براي انجام يه سري کار مرتبط به هم نوشته ميشن.
    مثلا:
    شما فرض کن تو برنامت ميخواي از ADC و UART و چيزاي ديگه استفاده کني و براي ADC مثلا يه تابع نوشتي که فعالش کنه و يکي ديگه که غير فعالش کنه و يکي ديگه که مقدار يه کانال رو بخونه و براي UART هم يه تابع براي ارسال رشته و يه تابع براي ارسال بايت و يه تابع ديگه هم براي دريافت رشته و يکي هم براي دريافت بايت نوشتي، همه اين توابع رو اگه با هم تو کد بنويسي مسلما کدت شلوغ ميشه و خوندنش يکم سخت.
    شما مياي اينجا يه کلاس مثلا به نام ADCManager مينويسي و تمام توابع کار با ADC رو توش پياده سازي ميکني و يه کلاس ديگه هم به نام UARTManager مينويسي که توش تمام توابع کار با UART رو پياده سازي کردي، حالا براي استفاد از ADC و UART بايد اول يه نمونه از کلاس مربوط بسازي و با استفاده از اون نمونه متدي رو که ميخواي فراخوني کني، (***توابعي که از داخل کلاس فراخوني ميشن رو ديگه بهشون تابع نميگن و بهشون ميگن متد)
    کلاس ها امکان استفاده مجدد کد رو هم ساده ميکنن.
    اين مثالي که زدم ساده ترين کاربرد کلاس ها هست، و اگه بخواي وارد بحث OOP بشي بايد يه سري مسائل ديگه کلاس ها هم بدوني که مهمترينشون ارث بري کلاس ها هست با کاربردشون.
    ;()((void (*)(void))0x0000))
  4. #4
    2013/08/07
    196
    4

    پاسخ : کلاس در سی ++ چیست؟!!

    خیر همه زبانها با کلاس نیستن :biggrin:
    فقط زبانهای شی گرا که سی++ جزوشونه (سی نیست).
    کلاس دقیقا نقطه شروع برنامه نویسی شی گراست (یا بقول دوستمون OOP). بعد ازون هم تمام مفاهیم شی گرایی (کپسوله سازی، وراثت و و و) همشون ابزارهایی جهت کار با کلاسهاست.
    حالا من خیلی ساده و خلاصه بهت بگم که یه کلاس چیه
    ببین شما فرض کن میخوای یه برنامه بنویسی که مشخصات صدها دانشجو رو درش ذخیره و بازیابی کنی یا تغییر بدی.
    خوب چه راهکاری به نظرت میرسه؟
    یه راهکار اینه که به تعداد مورد نیاز رشته بسازی و تو یکی نامها و تو یکی نمره ها و تو یکی شماره ها و...رو دخیره کنی.
    یا یه راهکار اینه که از لیست های پیوندی استفاده کنی و چندین ساختمان ایجاد کنی.
    اما تو تمام این روشها امنیت چندان بالا نیست دلیلشم تا حدودیش کاملا واضحه، مثلا تو روش اول اگه فقط یه الگوریتم کارشو بدرستی انجام نده ممکنه مشکلات زیادی بوجود بیاد.
    اما روش خیلی بهتر و امن تر ایجاد یک کلاسه، که خصایص و متدها و بلوکه هایی رو برای خودش داره.
    مثلا خصایص میتونه نمره، ترم، نام، نام پدر، شماره شناسنامه و... داشته باشه.
    حالا به تعداد مورد نیاز میشه ازین کلاس شی ساخت و داخل هر شی خصوصیات یک دانشجو ذخیره کرد.
    امیدوارم متوجه شده باشی
    کم گوی و گزیده گوی
  5. #5
    2013/03/18
    babol
    1,387
    652

    پاسخ : کلاس در سی ++ چیست؟!!

    ممنون از راهنمایی هاتون دوستان :applause:
    بله داره کم کم جا میاوفته.
    یه سوال اینکه
    اینطور که معلومه کلاس ها هم شبیه توابع هستند.
    حالا مثلا مثلا این دوستمون،
    ببین شما فرض کن میخوای یه برنامه بنویسی که مشخصات صدها دانشجو رو درش ذخیره و بازیابی کنی یا تغییر بدی.
    با یه تابع هم میشه اینکار رو کرد دیگه.
    چون مثلا ما کلاس تعریف میکنیم بعدش داخلش متغییر و تابع میزاریم،بعدش میآیم دوباره از همون تابع های استفاده می کنیم.
    خوب چه کاریه همون اول میآیم مستقیما از تابع استفاده میکنیم دیگه.
    چرا رفتیم از کلاس استفاده کردیم.!!!!!!
    (البته ناگفته نماند که میدونم این یه مثال ساده بود و کلاس ها هم اگه نباشن کار برنامه نویس ها لنگه و بخش مهمی تو برنامه نویسی هست.خوب چه کنیم واسه ما تازه کارآ انگار بدرد نخوره باید تحقیق کنیم و از شما دوستان کمک بگیریم تا بفهمیم دیگه.)
    بازم تشکر
    به سمت نور خورشيد حرکت کن،تو ميتوني تابش خورشيد رو حس کني ،حتي اگه کور باشي.
    (پيش به سوي هدف)
  6. #6
    2013/02/04
    298
    6

    پاسخ : کلاس در سي ++ چيست؟!!

    اگر ممکنه فرق عملي( نه دستوري) کلاس ها با استراکچرها رو هم توي توضيحاتتون بگنجونيد.
    اسمم بابا برقيه مي دونين کارم چيه دلم مي خواد همه جا که با کمک شما
    مصرف برق کم بشه تا برقمون قطع نشه
    مصرف بي رويه کار خيلي بديه موقع پخش کارتون برق تلويزيون
    اگه يه دفعه بره حوصله مون سر مي ره
    هرگز نشه فراموش لامپ اضافي خاموش
  7. #7
    2011/03/18
    تهران
    574
    2

    پاسخ : کلاس در سي ++ چيست؟!!

    نقل قول نوشته اصلی توسط محمد مهدي نايبي
    اگر ممکنه فرق عملي( نه دستوري) کلاس ها با استراکچرها رو هم توي توضيحاتتون بگنجونيد.
    استراکچر رو بيشتر ازش براي نگهداري ديتا استفاده ميکنن و جنبه ديتايي داره ولي کلاس رو براي انجام کار يا دستورات استفاده ميکنن و جنبه کدي داره.
    ;()((void (*)(void))0x0000))
  8. #8
    2007/10/14
    تهران
    1,335
    38

    پاسخ : کلاس در سی ++ چیست؟!!

    کلاس ویژگی هایی داره که تابع و Structure ندارن.
    1- Property : مثلاً کلاس Color میتونه سه تا خاصیت R و G و B رو داشته باشه برای دسترسی به Property بعد از نام کلاس، نقطه و بعد نام خاصیت میاد مثلاً Color.R
    2- Method : کار خاصی رو انجام میده مثلاً متد ToHSV در کلاس Color میتونه مبنای رنگ رو از RGB به HSV تغییر بده. نحوه استفاده از متد هم مشابه Property هست مثلاً (HSV =Color.ToHSV(RGBColor که RGBColor و HSV متغیرهایی در برنامه از نوع کلاس Color هستند.
    3- Encapsulation: برنامه های دیگه فقط به مقادیری از یک کلاس دسترسی دارن که بهشون اجازه داده میشه (نیازی نیست به همه مقادیر دسترسی داشته باشن) که احتمال خطا رو کم میکنه و امنیت برنامه رو افزایش میده. مثلاً میشه یک خاصیت رو در کلاس به صورت ReadOnly معرفی کرد تا از بیرون قابل تغییر نباشه ولی بشه خوندش.
    4- وراثت: مثلاً کلاسی که برای کار با انواع شکل های گرافیکی به کار میره میتونه از کلاس رنگ و کلاس چند ضلعی ها استفاده کنه (ارث ببره) و کلاس چند ضلعی ها میتونه از کلاس خطوط ارث ببره به این ترتیب توسعه برنامه ها سازمان یافته تر و راحت تر میشه.
    5- راحتی استفاده: میشه یک یا چند کلاس رو در قالب یک فایل کتابخانه (DLL) در آورد و با افزودن Reference اون در برنامه های جدید ازشون استفاده کرد.
    فعلاً این ویژگی ها رو یادم میاد.
    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"
  9. #9
    2009/10/21
    تهران
    2,493
    194

    پاسخ : کلاس در سی ++ چیست؟!!

    دیشب یه چند خط نوشتم بعد حسم نگرفت تایپ کنم بیخیال شدم امشب امیدوارم بشه
    یه وقتی برنامه ها اونقدر کم حجم بود که همه چی تو دل یه تایع نوشته میشد
    بعد برنامه ها پیچیده تر و بزرگتر شد؛ برنامه نویسی ماژولار پیش اومد؛ شکوندن برنامه های بزرگ به قطعات کوچکتر که هر قطعه وظیفه خاصی رو انجام میداد
    بعد برنامه ها اونقدر بزگ شدند که دیگه حتی همون ماژولها هم پیچیدگشون از برنامه های ماژولار بیشتر شد؛ کلاسها بوجود اومدند اما کلاس چیه؛ یه مثال میزنم امیدوارم مفهوم باشه
    شما میخوای برنامه بازی فوتبال رو بنویسی
    فوتبالیست ها نقاط مشترکی دارند (که بعنوان فوتبالیست شناخته میشن نه والیبالیست) کارهای مشخصی رو در زمین انجام میدن د ؛ شوت میزنند؛ سر مینند؛ اوت میندازن و ....
    هر فوتبالیست البته خصوصیات خاصی رو هم داره مثلا رونالدو با سرعت 20km/h میدوه ولی مسی 18 تا
    خب شما میای یه کار کلی میکنی؛ کلاس فوتبالیست رومینویسی ؛ یه موجودیت خام که هم خصوصیت داره و هم وظایف مشخص
    از این کلاس 11 تا نمونه میسازی و به هر کدوم خصوصیلات خودشون رو نسبا میدی و اینطوری یه تیم کامل داری از تنها یک فوتبالیست اولیه که نوشته بودی
    البته فوتبالیستها بسته به موقعیت بازیشون وظایفشون ممکنه فرق کنه ؛ یا حتی خصوصیاتشون کم و زیاد بشه مثلا
    دروازه بان حق داره توپ رو در دست بگیره؛ یا یه پیستون قدرت و دقت سانترش بیشتر از یه دفاعه،
    اینجا بحث وراثت پیش میاد، شما از فوتبالیست اولیه (تو مایه های انسان اولیه)؛ فرزندانی تولید میکنی که یکیش میشه دروازه بان، یکی میشه ذفاع و ...
    وراجی دیگه بسه
نمایش نتایج: از 1 به 9 از 9

موضوعات مشابه

  1. 170 وات کلاس D در یک آی سی!!!!
    توسط meh_o در انجمن مدارات صوتي
    پاسخ: 6
    آخرين نوشته: 2013/10/30, 21:38
  2. پاسخ: 5
    آخرين نوشته: 2011/11/24, 13:32
  3. کلاس h
    توسط r.babazadeh در انجمن مدارات صوتي
    پاسخ: 10
    آخرين نوشته: 2008/12/17, 14:06
  4. کلاس DSP
    توسط tanbakoo در انجمن سیستمهای مخابراتی
    پاسخ: 4
    آخرين نوشته: 2008/03/03, 08:39
  5. پاسخ: 2
    آخرين نوشته: 2008/02/23, 12:24

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •