#04 [oop] - Constructors
HTML-код
- Опубликовано: 6 ноя 2024
- كورس البرمجة الكينونية باستخدام لغة البرمجة سي بلس بلس:
دالة البناء - Constructors
Course Object-Oriented Programming Using C++:
Constructors
--
Material: adelnasim.com/...
المادة: adelnasim.com/...
رابط المجموعة: / 281852196102657
-
If you like my content, buy me a cup of coffee: www.buymeacoff...
دعم القناة: adelnasim.com/...
استاذ عادل ممكن تنزلل كورس مشان الجافا لانو شرحك رهيب وكتير بتفهم وانت المرجع الاساسي لطلاب هندسة المعلوماتية بسورية بس ازا بتتكرم بكورس جافا
تحية الك ولكل سوري ..
ان شاء الله قريبا ..
+Adel Nasim الله يسعدك لا طول علينا الشهر الجاي ببلش دوامنا
ان شاء الله بعمل الي بقدر عليه .. بالتوفيق الكم
@@zozoyousef4679تخرجت ولا لسا👀
جزاك الله الخير... شرحك اكثر من رائع الله يجازيك الجنه و يعطيك العافيه على مجهودك و وقتك
يعافي عمرك يا رب, كل الشكر الك ولدعمك, بالتوفيق الك
والله يا زعيم اخر الفيديو فتنا ب الحيط
انا بتشكرك كثييييييييير والله فيديوهاتك يدي اليمين بهي المادة 💙💙
هل خلاصه القول ف استخدام ال constructor انه يكون بديل عن استخدام ال function >.> اعني هل هذا اهميته ؟
انا برضه هيك أفهمه كمان أنها بديل عن الفنكشن من ناحية الأهمية
في حالة انك عايز حاجة تتعمل علطول أو تلقاءي اول ما تعمل object استخدم ال constructor أما لو انت عايز تعمل شيء معين أو تستخدم قيمة معينة بعد فترة من إنشاء ال object استخدم ال function
جزاك الله خير وبارك الله فيك وربنا يكثر من امثالك ويجعل في ميزان حسناتك يارب..
عاشت ايدك على هذا الشرح الرائع المزيد من الموفقيه و اعطائنا المزيد من الدروس
شكرا جزيلا اخ عادل نسيم
العفو صديقي ..
وشكرا على المشاهدة ..
سؤال صغير .... عند تصريح عن باني ناسخ ممكن ننسخ جزء من براميترات الكونستركتر الاصلي الي اخدين منو الاوبجيكت يعني انا بالكوبي كونستركتر حابب استخدم نص الباراميترات الي موجدة بالكونستركتر الاصلي ...في هيك شي ولا مجبور اسنخ كل الباراميترات الموجودة بالاصلي
لا مش مجبور ...
اصلا الفكرة منو احد اهدافها من الي انت بتحكي في ..
يعطيك العافية اخوي عادل , كان بأمكانك استخدام string بدل char [ ] , لتعريف الاسم هيك اريح للطلاب .
يعافي عمرك صديقي .. كلام سليم .. لكن الـ
char
افضل من ناحية المساحة بالتوفيق الك
شكرا جدا ع مجهودك ربنا يوفقك و يا ريت تتكرم بكورسات تانى لان شرح بسيط وجميل
العفو ..
ان شاء الله عن قريب .
فى الانتظار ❤
شكرا جزيلا الك وبالتوفيق ان شاء الله
بس حسب الي فهمته اذا اضفنة copy constructor لازم يكون اكو( Parameterized constructor) بهذه الحالة راح يكون ال copy مامنه فايدة لان مااختصرنا شي بس في حال اذا جان اكو برنامج يحتوي اكثر من class واحد راح يكون فكرة الcopy مفيدة حتى انسخ متغيرات الclass الاول للثاني صح ؟
بالظبط
الله يجزاك خير ويرفع قدرك
مشكوور يخوي ع الشرح بس يا ريت تنزل اسئلة اوبجيكت للفيرست 💚
تسلم ..
بالنسبة للاسئلة ما توكل همها ..
افهم الفكرة .. واكتبها .. بتكون قادر تحل اي سؤال بيجيك ..
استاذ عادل ليش استخدمت
Void main
بدل
Int main
مشكور👍👍
الطريقتين رح يأدو نفس الغرض ما في فرق بيناتهم غير اذا وضعت int
يحبب اني انهي البرنامج بـ return 0
@@AdelNasim اها
تسلم ♥️♥️
جزاك الله كل خير اخي الكريم
بقالي فترة بحاول افهم ليه حطينا const و & في الكوبي كونستركتر
وقرأت كل التعليقات لسا مفهمتش الوضع بصورة كامله
فلو تكرمت تخصص موضوع لشرح هذه الجزئية فقط أو لو مش مستاهل ممكن تفصلها في كومنت هنا
ومشكور
جزاك الله خير ورزقك من فضله وكثر الله من امثالك
يعطيك الف عافية يارب شكرا كتير إلك شرحك رائع ممكن بس سؤال اذا بدي ابعث شيء للcopy costructor بدون ماااعرف gوالي بداخلها ومباشرة بدي استعمل ال costructor copy كيف؟؟؟؟
الله يعطيك العافية بس عندي سؤال ال constructor الاول الempty وظيفته فقط انه اعطيه قيم ايبتدائية للprivate
الله يعافيك ..
مش شرط..
احنا ذكرنا وظيفتو لكن ممكن انت استخدامك يكون غير اعطاء القيم ..
المهم الي بدي ياك تفهمو انو ينادى لحظة تعريف الاوبجكت.. ولقدام ان شاء الله رح يبين شو الفائدة منو ..
ان شاء الله
السلام عليكم, اول شي الله يعطيك العافية على المجهود الرائع يلي عامله بالفيديوهات.
عندي سؤال لو سمحت, لما انت عم تستدعي ال parametezd Constructor بالـ main وبتفتح بعدها اقواس لتعطي اسماء(احرف) او قيم, انا عندي ماعم يقبل الكومبايلر ياخد احرف, لأنو معتبر الArray كـ constant ثابت, وعم بتضر اروح اعرَف بالـ main اراي للشي يلي بدي اكتبو داخل الكونستركشر واسميه اسم معين للأري, وبعدها بكتب اسم الاراي بداخل الكونستركشر, بدل ما اقدر اكتب مباشرة بداخل الكونستركشر.
هل لديك معلومة عن هي المشكلة, وشكرا لك وجزاك الله خير
ممكن تخليها pointer لما تبعث القيمة لل Constructor
وعليكم السلام ورحمة الله, يعافي عمرك اخي
هلا الي بصير معك من جديد, المحررات نسخ 2017 فما فوق, بدهم يخلو كلشي ديناميكي بمعنى مش ثابت
اول كان طبيعي ابعث قيمة مباشرة كـ باراميتر لكن على التعديل الجديد حاولو يلغو هاي العملية لتتعود انت تخزن بمتغير وتبعتو كـ باراميتر
انت قادر تغير محتوى المتغير بسهولة اما لو كنت باعث قيمة مباشرة ما رح تقدر تعدل القيمة, هاي القضية بكل بساطة
الله يعطيك العافية بس سؤال شن الفايدة من النوع الثالث ادا كان انا عندي constructor بيطبعلي نفس الناتج الاخر
يعافيكي يارب، على فرض انو لما بدي انسخ اوبجكت الى اوبجكت آخر ما بدي نفس الداتا كاملة او ما بدي الا كم data members فقط فهون ال copy constructor بحل المشكلة
يعطيك العافية استاذ عادل
بتشرح في الفيديوهات ال
Inline
شكرا عادل نسيم❤❤
الله يعطيك الف عافية
بدنا منك تشرح aggregation و composition
top des top ta3 les top vraiment 9owaaa
algerien yeaaaah
صلى الله عليه و على آله وصحبه
لو سمحت ما معنى كتابة الكونستركتر بهذا الشكل
Copy(const Copy &x)
ما الفائده من انه يكون constant
و & هل هاي معناها انه في بوينتر موجود على البارامتر ؟
و بهذا الشكل هل يعني انه ممنوع اعدل على قيم الاوبجكت اللي رح يتمرر لهاد الكونستركتر ؟
..
.
how to call constructor from another class in c++
ارجوك ارجو الاجابة بسرعة منفضلك
السلام عليكم
ناشر شي فيديو عن المكتبة ؟
او عن malloc & realloc , Free ؟
وعليكم السلام ورحمة الله ..
للاسف لا
اللهم صل وسلم على سيدنا محمد وعلى آله وصحبه أجمعين
يسلم ايديك والله يا عادل💜
حبيبي والله ياعمو عادل أنا بحبك وبسمع كمان الاعلانان لحد الاخر وما بعمل تخطي للاعلانات عشان أدعمك ربنا يحفظك ويحميك يارررب أنا ممكن أطلب منك طلب تعمل كورس مدفوع للاندرويد يا أخ عادل تعمل كورس مدفوع ويكون عميق في الشرج + تعمل مشروع به يا أخي عندنا الناس كلها بتحيك والله .
مستني منك الرد
يسعدك اخ صلاح ..
شاكر دعمك الرائع ..
رح يكون ضمن الخطة القادمة بإذن الله..
وان شاء الله رح يكون مجاني ..
كل التوفق الك ..
يعطيك العافية...هل يوجد فرق بين استخدام ال character array و ال string ؟
لاء
كلهم عبارة عن أن انت بتكتب نص او كلام بس بطرق مختلفة سواء array of char أو string
ال
Array of characters
بتوفر مساحة للبرنامج
يعطيك العافية استاذ بس لو سمحت تنزل البرامج الي بتكتبها بصور
شكرا جدا الشرح ممتاز
العفو .. وشكرا على متابعتك ..
السلام عليكم
انت مبدع
بس كيف ممكن اتواصل معك عندي بعض الاستفسارات مثل
لو غيرنا قيمة متغير في كنستركتور في واحد آخر بعده اي قيمة رح تتخزن للتغير أو أنه ما بأثر الكنسنركتور قيمة في الثاني كونها معرفة برايفت؟
وعليكم السلام ورحمة الله ..
تسلم ..
طبعا لكل اوبجكت بكون عندي بالعادة
Constructor
واحد تابع الو ..
وبناءا عليه بوخد القيمة لل
...Attributes
اما.اذا قصدك اشي ثاني .. يا ريت تفرجيني كودك
وقت عملنا باراميتر اف كاركتير للاسم لحال ما قدرت اوصله ولا بطريقة
الله يجزيك الخير والله ما بفهم غير عليك🌻🌻 اما الدكاترة يلي بالجامعات ما بفهم اشي نص الكلام انجلش بيحكو 😅
بتشكرك عهالشرح الجميل بس بدي اسئلك بيختلف لما ادرس البرمجه الكينونيه بلغة سي بلس بلس عن لغة جافا .... لانو ممكن بجامعتي بيعطونا ياها بلغة جافا وعندك بال سي بلس بلس .... وشكرا لالك
ولوو ..
بالنسبة للغة رح يختلف معك ال
Syntax
ورح يختلف معك بعض المميزات الموجودة بالجافا ..
لكن الافكار مشتركة .. حاول افهم الفكرة واعكسها ع الجافا ..
او اذا بدك تريح بالك .. حاول دور على دورة بلغة الجافا .. وبالتوفيق الك ..
الله يجزاك حير
مرحبا
سؤال اذا كان ال accsee modifier لل method ضمن class معين هي private شلون بدي اوصللها ب class تاني
اهلا ممكن اني اضيف كمان
method
داخل الـ
public
هاي الـ
method
بتسدعي الـ
method
الي بالـ
private
يعطيك العافة على شرح .... كلمة const ضروري قبل الobject بالباني ناسخ ؟ ...ولا حسب الكومبايلر
الله يعافيك ..
حسب الكومبايلر
انا شوفت الفيديو من فترة و مش متذكر بظبط المعلومة اني لو مش كاتب default cons. و كاتب parm. ما ينفع اخد object من غير ما ابعتله او حاجة زي كدة ممكت تعيد المعلومة او تقولي ف انهي فيديو بظبط , شكرا
كانت الفكرة صديقي في حال ما كتبت
Default contractor
وكان الكلاس عندي بحتوى على
Parameterize construct
فقط ..
هون ممكن تحصل عندي مشكلة اذا تم تعريف اوبجكت ..
فكان الحل بال
Default argument ..
يعطيك العافية ..
طيب على فرض حطينا بال
الثاني porametrize con. ؟؟
جملة cout اي واحد رح ينفذ ؟
## الدقيقة 38 ##
الله يعافيكي
التنفيذ بعتمد على انواع المتغيرات وعددها
طبعا الي بستقبل هاي المتغيرات هو ..اقواس الاوبجكت
وبناءا على عدد المتغيرات او نوعها يتم استدعاء الـ
Constructors
وليس على جمل الطباعة الـتي داخل الـ
Constructors
Adel Nasim
ااه فهمت عليك .. يسلموو ^^
يا هلا
يعطيك العافية عالمجهود
بس بالله هلق لما عم طبق برنامج ال constructer parameterize تبع ال student
اشارة ال error بالاخير ما عم تروح من تحت الاسم ب ()int main شو السبب اخي ؟
يعني كونستركتر اقدر استخدمه بدل فنكشن صحح؟
يعطيك الف عافيه
30:45
لما عرّفت اوبجكت وشبكته بالكلاس وداخل الاقواس وضعت متغيرات اعطاني warning و error
no overloaded function could convert all the argument types
الي من مبارح بلاخم اعرف شو المشكلة وبعثت ل دكتوري ما برد
استاذ عادل اولا جزاك الله خيرا على هذا المجهود الرائع عندي سؤال
في مثال ال copy انا مشيت ورى خطواتك بالظبط لكن في ال main لما جيت اكتب copy g اعطاني error ونص الايرور عندي :
Error c 4552 operator has no effect
Error c2827 : 'copy' : ambiguous symbol
اجمعين يارب في مجال تنسخ كودك بالردود
وانا صار معي هيك
عرفت كيف ؟
بارك الله فيك
شكرا جدا ع الشرح
فيه حاجة مفهمتهاش للاسف اللي هي تالت مسألة بتاعة كوبي كونستركتور
مش فاهم ايه فايدة اننا نعمل كوبي كونستركتور والباراميتر اللي فيها اوبجكت
يعني ايه الفايدة اللي عايدة عليا من الخطوة دي؟
السلام عليكم اخي عادل .ان شاء الله انت بخير. ربي يوفقك
اود استفسر ليه يجب وضع & و const عند تمرير اوبجكت للكنستراكتر.
وعليكم السلام .. هلا اخي ..
هاض الرابط في اجابة لسؤالك ..
stackoverflow.com/questions/2582797/why-pass-by-const-reference-instead-of-by-value
Adel Nasim الله يرحم والديك
اخي سؤال انا جربت ادخل قيم داخل الوبجكت عشان تتخزن بالبارمتر
وكمان بنفس الوئت دخلت قيم عن طريق الset
بس البرنامج طبعلي رسالة الخاصة بالبارمتر بس حط قيم الموجودة داخل الset
فليش ما طبع القيم الموجودة داخل الوبجكت ويلي هي تابعة للبارمتر
ام انو اعتبر ان القيم الموجودة داخل القوسن تعيت الاوبجكت ك عرف بس ك دلالة
وشككرااا
في مجال تنسخ الكود عشان افهم منك اكثر
شرح ممتاز جدا
القطاعة حقتي 😍
الليدر القلب❤❤
استاذنا المحترم ♥ ,, ممكن تعملنا فيديهات ع المواضيع التالية (shallow and deep copy , move constructor ) وبالاخص ال (move constructor) وشكرااا لمجهودك وشرح حضرتك الرائع ♥♥
بإذن الله صديقي, حياك الله وبالتوفيق الك
استاذ ب النسبة لل constracter الاخير
بيصير نعمل array. ? بدل a1, a 2.............
اخي الكريم ما هي الاسفاده من copy constructor ؟
copy (const copy & a ) هذا ال كونستراكتور ما فائدته ؟!
في بعض الاحيان .. انت ما بدك انو كل ال
Attributes
تتم عملية نقلها .. مثلا بدك بس ال
Name & Id
بهاي الحالة بتقدر تستفيد من الفكرة ..
لكن الاستفادة الحقيقية تكمن عند التعامل مع البوينتر .. رح تفهم الحاجة الحقيقية من الكوبي كونستركتر بكورس الداتا ستركشر .. ان شاء الله ..
Adel Nasim متشكر جدا ليك وربنا يكرمك خير علي هذا المجهود الرائع ❤
تسلم .. واياكم يارب ...
اخي هيك ايضما منستفيد من البارمتر كونسركتر انو ما نطول بال
classes
بكتابة الset and get
بس نستخدم البارمتر تكفي
بنستفسد من ال
parameterize constructor..
كقيمة ابتدائية للاوبجكت .. اما
function set
بستفيد منها في حال بدي اعدل على قيمة من قيم الاوبجكت ..
الfunction set
هي هل رح ندرسها لاحقا ام لا
اكيد ..
الله يديك العافية
شو الفائده من حركه ال ()copy h.p؟
ليش عملناها
بس هى ايه المشكله لو استغنيت عن array of characters واستعملت string ؟؟؟؟؟
ال
Array of char
بتحجز مساحة اقل من ال
String
هذة هو السبب ..
العفو .. وبالتوفيق الك ..
مش دائما بحتاج انقل جميع المتغيرات ..
لو فعليا بدي انقل جميع المتغيرات ..
بستعمل المساواة بين الاوبجكت بالmain
وبتنتهي القصة ..
لكن لنفترض انو بدي انقل
Attributes
معينة .. ما بدي انقل كل ال
Attributes..
/ لكن الاستفادة الحقيقية من ال
copy construct
ابعد من هيك ..
رح نتعرف عليها ان شاء الله بكورس الداتا ستركشر .. لما نتعامل مع ال
Pointers
وعملية التهيئة .. قبل عملية الاسناد .
شرحك طرش يا قلب اخوك
هل الكونسترااكتور يعتبر object
ووش الفايدة من ال copy constracter
هل يمكنني قراءة قيمة متغير من نوع protected من خلال ال constructor ؟
ازاي لما اجي انشئ object باسم الكلاس الكومبيلر يقولي copy is ambiguous???
ماالفرق بين داله البناء والداله العاديه
يحتاج انك تشوف الفيديو ..
ورح تشوف الفروقات وانت بتشاهد بشكل اوضح واسرع ..
انا نقلت المثال التاني بالنص لكن compiler لا يترجم بيعمل خط احمر علي كلمة محمد وبيقول. No instance constructor student. ما هو الخطا. انا اسف لااطالة و شكرا لحضرتك
ممكن اشوف كودك
@@AdelNasim طبعا اكيد بس علي حد علمي ما استطيع ارسل صورة في التعليقات ممكن حضرتك تعطينا لنك صفحتك علي الفيس حتي اقدر اصورهالك. شكزا
Copy & Paste
واذا في اي استفسارات في مجموعة بنفس الاسم Adel Nasim على ال Facebook
وذهك اسم الخطا
Severity Code Description Project File Suppression State
Error C2664 'student::student(student &&)': cannot convert argument 1 from 'const char [8]' to 'char []
@@AdelNasim
يعطيك ألف ألف عافية
ما شاء الله شرح ولا أروع
Thank you so much Dr;
Access function في اي فيديو؟؟؟؟
لو سمحت هو الكوبى كونستركتور مينفعش استخدمه انى اعمل نسخ ل اوبجكت من كلاس ل اوبجت تانى فى كلاس تانى ؟ يعنى حضرتك كنت بتعمل كوبى لاوبجكت فى نفس الكلاس .. انا جربت كدة بس اديتنى إيرور
#include
using namespace std;
class w
{ private:
int aw,bw,cw,dw;
public: // constructor w is taking
w (q &o) // the value of the obj o in the class q
{ aw=o.a;
bw=o.b;
cw=o.c;
dw=o.d;
}
void pt()
{ cout
لا ما بنفع لانو الداتا الي بالكلاس الثاني حتكون بطبيعة الحال مختلفة عن الكلاس نفسو ..
هو ليه حضرتك في المثال الثاني student عند name تستخدم arryليش مو string??
نفس سؤالي 😅 بحس ال string اسهل
ممكن اتواصل معك استاذ عادل عندي طلب منك اذا بتسمح
اخوي بصير بأخر مثال تستخدم ال forولا كيف
بتقدر تستخدم الي بدك ياه ..
بس شو السبب او الغرض الي بدك تستعمل اللوب لا اجلو؟!
Adel Nasim باسناد القيم
لو كنت بتعامل مع مصفوفة .. فأكيد انا بحاجة الى جمل دوران .. لكن المثال الي بالفيديو انا بتعامل مع متغيرات ..
في إلك فيديوهات للlcdl إصدار 5الجديد؟
اذا في ممكن اعرف كيف احصل عليها؟
شكرااااااااااا ❤️❤️❤️❤️❤️
مرحبا عندي سوال مابعرف حل تبعو اذا فيك ترد علي بس تشرحلي اي طريقه نحل فيها سوال
اهلا ..
شو فكرة السؤال؟
السلام عليكم
Constructor
بستفيد منها بايش
السلام عليكم يخوان في مجال حدا يساعدني اعرف هذول المواضيع في اي فيديوهات
Struct
Information hidding in struct
array as a data member
Array of struct
Struct within struct
Class
Construct
Default constructor
Conversion constructor
Access function
عشان ال classes بتفرع
وال construct بتفرع
وعليكم السلام ورحمة الله..
struct Information hidding in struct..struct within struct
ruclips.net/video/1oB0Tz3ITjY/видео.html
struct in oop
ruclips.net/video/vLob39sv1hg/видео.html
class
ruclips.net/video/2ZIrInD95Us/видео.html
Construct
Default constructor
Conversion constructor
ruclips.net/video/ndgC7OAxf6M/видео.html&lc=z22uffp4mkyisnvfeacdp43bxjdtlvjq1ykxycvejc5w03c010c
جميل
ف الدقيقة 33 لما باجى اعمل رن بيدينى ايرور ان strcpy_s (not declard in this scope #include
#include
using namespace std;
class student
{
char name[20];
int id;
public:
student()
{
strcpy_s(name,"no name");
id = 0;
}
student(char n[], int i)
{
cout
حاولي شيلي ال _s ..
واحكيلي شو بصير معك
نفس الايرور
نفس الايرور
ideone.com/Y4Qevb
لازم تضمني البرنامج عندك بمكتبة
#include
تمام شكرا ربنا يكرمك
ايش اسم البرنامج الي بتتسخدمه
السلام عليكم.
اذا كان ممكن ان تشرح لي.
le constructeurs par deplacement [Copy (copy && a) ]
شرحك جميل
طيب ليش بال Copy constuctor ماعملت زي هيك a1=a.aa1 بس هاي الي عجقتني بصراحة
thank u very much
ليه هنا بيعطي error ع اسم ahmad ?
#include
#include
using namespace std;
class student{
private:
char name[20];
int id;
public:
student(){
cout
السبب انو اي نص لازم يكون بين
" "
حطيت كوتيشنز بردو بيعطي error
مكتوب no instance of constractor student::student matches the argument list
وerror تاني
Un expected end of file looking for precompiled header ..did you forget to add #include " pch.h"
..
لما ضيفتها طلع 2 ايرورز تاني
"ob1' redefindation . Previous was data variable
''ob2" redefindation.. Multiple initialization
دا ع الڤچوال ستوديو ومش فاهمة حاجة😭
الاوبجكت معررف عندك اكثر من مرة بنفس الاسم اكيد رح يطلع عندك خطأ .. احذفي المتكرر
تمام ظبط ..شكرا
شي بضيع 🥲🥲
❤❤❤
السلام عليكم استاذ عندي سؤال ممكن تشحرلي ياه بالتعليق 😊
#include
#include
#include
using namespace std;
class student
{
private :
char name[20];
int id;
public :
student()
{
strcpy_s( name, "no name");
id = 0;
}
student(const char n[], int i)
{
cout
هذا تحديث جديد على الفجول ستديو بحكيلك اذا بدك تبعث الداتا مباشرة بمعنى
"Ahmad"
انت هيك بعثتها كـ
static data
يعني داتا ثابتة اما الافضل انك تخليها
dynamic
يعني تخزن احمد داخل متغير وتبعث المتغير للـ
parameterized constructor
char n [] = "ahmad";
student s(n, 5454);
بهاي الحالة فش داعي تكتب
const
@@AdelNasim بقالي يجي ساعة بدور علي الخطا ده شكرا جدا ♥
🥰😍😍💛
thank u
thx
......❤❤
👍👍
ليه بتغلب حالك وبتحط الname ك char ؟ ليه ما تحط string بدون ما تستخدم strcpy
كلام سليم لاكن بالنسبة للمساحة الـ char افضل