هر کی تمرین و پروزه در مورد ارث بری در C++ سراغ داره (ترجیحا با جواب) برای من بفرسته.
ممنونم
Printable View
هر کی تمرین و پروزه در مورد ارث بری در C++ سراغ داره (ترجیحا با جواب) برای من بفرسته.
ممنونم
مثال زير رو الان نوشتم . بهت كمك ميكنه كه ارث بري رو درك كني و بفهمي كجا ها ميشه به كدوم متغيير هاي كلاس دسترسي داشت.(توجه كن اونجا ها كه error// گذاشتم يعني اگر اين خط رو بزاري و اجرا كني بخاطر دسترسي غير مجاز بهت پيغام خطا ميده.(ولي من نوشتم كه متوجه بشي كه اين نوع دسترسي غير مجاز است و خودت بايد اون خط رو حذفش كني)
کد:#include <iostream.h>
class A
{
private:
int privdataA;
protected:
int protdataA;
public:
int pubdataA;
};
class B:public A
{
public:
void funct()
{
int a;
a=privdata;//error
a=prodataA;
a=pubdata a;
}
};
class C:private A
{
public:
void funct()
{
int a;
a=privdataA;//error
a=protdataA;
a=pubdataA;
}
};
int main()
{
int a;
B objB;
a=objB.privdataA;//error
a=objB.protdataA;//error
a=objB.pubdataA;
C objC;
a=objC.privdataA;//error
a=objC.protdataA;//error
a=objC.pubdataA;//error
return 0;
}
نقل قول:
نوشته شده توسط Reza_S
سلام
من كه براي خودم نمي خوام يه سري تمرين درست حسابي ميخوام به يه سري كار آموز بدم .
ممنونم
سوال يك برنامه كه از قسمت ارث بري توي امتحانم اومده بود رو برات مي نويسم اگه تونستم شب جوابش رو برات مي نويسم:
يك شركت انتشاراتي را در نظر بگيريد كه كتاب و نسخه هاي ويديوئي از آثارش را عرضه مي كند . كلاسي به نام publication ايجاد كنيد كه عنوان title ( يك رشته) و قسمت price ( از نوع float ) يك اثر را در حافظه ذخيره كند. از اين كلاس دو كلاس به نام book براي جمع تعداد صفحه ( از نوع int ) و tape كه مدت زمان اجرا بر حسب دقيقه را جمع مي كند ( از نوع float ) به دست آوريد . هر يك از اين سه كلاس بايد حاوي تابع () getdata باشند كه داده هايش را از طريق صفحه كليد از كاربر دريافت مي كند و تابع () putdata كه داده هايش را در خروجي چاپ مي كند . با ايجاد نمونه هايي از آن ها برنامه () main اي براي آزمايش و اجراي كلاس هاي book و tape بنويسيد و از كاربر بخواهيد داده ها را با احضار () getdata وارد كند و با احضار () putdata داده ها را در خروجي چاپ كند.
راستي به نظر من حالا كه مي خواي به كار آموز ها تمرين بدي بهتره خودت يك كتاب از ++C داشته باشي ( توش پر تمرين هست)
Mamnoonam
age mishe ye ketab-e por az tamrin be man moarrefi kon man deitel, strustrup, complete refrence ro daram vali tamrinash be dard khor nist
ye seri tamri mesl-e nemoone soalat-e emtehani ya takalif-e daneshgahi mikham .
age kas-e dige ham dare mitoone be man mail bezane
ma'zerat az inke font-e farsi nadashtam
اين سوال امتحان ترم ما رو استاد دقيقا از كتاب زير داده بود.
مرجع كامل برنامه نويسي شي گرا با ++C
نويسنده دبليو . لي فور (Robert W.Lafore ) ترجمه مهندس حسين ابراهيم زاده قلزم
توي اين كتاب آخر هر فصل يكسري تمرين داده كه خودش هم از هر فصل 2-3 تا تمرينش رو حل كرده.
( ولي تا اونجا كه مي دونم كتاب برنامه نويسي ++C نويسنده deitel خيلي معروف هست)
bazam mamnoon
vali shoma ya harkodoom az doostan-e daneshjoo soalat emtehani ya tamrinateshoon ro darand bara-ye man befrestand
mamnoonam
جواب سوال پست دو :
کد:#include <iostream>
#include <string>
using namespace std;
class publication
{
private:
string title;
float price;
public:
void getdara()
{
cout<<"\nEnter title: ";cin>>title;
cout<<"Enter price: ";cin>>price;
}
void putdata() const
{
cout<<"\ntitle: "<<title;
cout<<"\nprice: "price;
}
};
class book:private publication
{
private:
int pages;
public:
void getdata()
{
publication::getdata();
cout<<"enter number of pages: ";cin>>pages;
}
void putdata() const
{
publication::putdata();
cout<<"\npages: "<<pages;
}
};
class tape:private publication
{
private:
float time;
public:
void getdata()
{
publication::getdata();
cout<<"Enter playing time: ";cin>>time;
}
void putdata() const
{
publication::putdata();
cout<<"\nplaying time: "<<time;
}
};
int main()
{
book book1;
tape tape1;
book1.getdata();
tape1.getdata();
book1.putdata();
tape1.putdata();
cout<<endl;
return 0;
}
بازم ممنون
فکر کنم غیر از شما کسی اینجا نباشه !
يه نمونه تابلو از ارث بري فرم هاييه كه تو ويژوال مي سازي .همشون از يه كلاس آغازين ارث مي برن و بعضياشون يه چيزاي اضافي دارن.خوبي سي پلاس پلاس اينه كه برعكس وي بي 6 ارث بري كاملا تحت كنترل برنامه نويسه.
مبحث ارث بري از اون چيزي كه تو كامنت هاي اين تاپيك ديده مي شه گسترده تر و قدرت مند تره و به چند مورد ساده محدود نميشه.