PDA

نسخه کامل مشاهده نسخه کامل : استفاده از استراکت درکلاس و ایجا آرایه از کلاس



rasool1110
07-01-2009, 23:53
با سلام به دوستان
من یه برنامه دارم می نویسم که اطلاعات اون به این صورته :
یک استراکت با چهار متغیر از نوع رشته که توسط تابعی مقادیر رو میگیره و خروجیش هم از نوع استراکت است
یک کلاس شامل یک اینتیجر دو رشته و یک متغیر از نوع استراکت بالا که توسط توابعی مقادیر اینتیجر و دو رشته دیگر را گرفته
و سپس سازنده ای که مقادیر گرفته شده از تابع استراکت و تابعهای کلاس را در مقادیر کلاس میریزد
یک آرایه از نوع کلاس بالا که آرایه پویا بوده و طول آن از تابعی که اطلاعات را از فایلی می خواند و تعداد سطرها را میشمارد بدست می آید سپس مقادیر فایل در آرایه کپی شده و برنامه شروع می شود
حالا اطلاعات روی ram سیستم قرار دارد و کاربر می تواند این اطلاعات را ادیت یا به آن اضافه یا از آن کم کند
حالا سوال من اینه که :
1. چطور میتونم از استراکت در کلاس استفاده کنم و توسط سازنده به مقادیر کلاس که شامل استراکت هم هست مقدار دهی کنم
2. چطور آرایه ای از کلاس پیاده سازی کنم
3. چطور تعداد سطرهای فایل رو بشمارم
ممنون میشم اگه منو راهنمایی کنید

mahdi7s
08-01-2009, 10:43
سلام
2)خوب راستش واضح نگفتيد اگر منظورتون ايجاد چند شي از يه كلاس همزمان باشد متوانيد هنگام ايجاد شي در جلوي نام شي با استفاده از آرايه اون رو پياده كنيد.
3)خوب اينو به صورت كد مي ذارم چون همه چيز رو كه نميشه توضيح داد.


برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

humphry
08-01-2009, 11:52
برای این که آرایه ای از کلاس پیاده کنی باید دیفالت کانستراکتور داشته باشی ... برای این کار می تونی این طور اقدام کنی


class Name {
private:
int num=111;
char *name="";
};
برای ساختن کانستراکتور کلاسی که در اون از کلاس یا استراکت استفاده کردی. داخل کانستراکتور، باید کانستراکتور کلاس یا استراکت ثانی رو صدا بزنی و به این ترتیب اون رو مقدار دهی کنی.
در زیر یه مثال برات میارم که متوجه بشی
#include "str.h"
#include "Date.h"
class student
{
private:
string name;
Date birthday;
unsigned number;
public:
student(char *n,int year,int month,int day,unsigned number)
}
.
.
.
student ::student(char *n,int year,int month,int day,unsigned number)
:name(n),birthday(y,m,d),number(n)
{}
برای ساختن کانستراکتور های حتی در صورتی که از تایپهای پیش فرض مثل اینتیجر استفاده می کنید مقدار دهی به روش فوق توصیه می شود ....ء
توضیح می دهم که کانستراکتور یک استرینگ و تاریخ قبلا توسط خودمان نوشته شده است.