إعلان
تعلم الآن

C++ تعريف دالة تأخذ باراميتر نوعه مؤشر لـ struct

للوصول للأشياء الموجودة في مؤشر لـ struct نستخدم العامل -> و ليس العامل . المعتاد.


في المثال التالي, قمنا بتعريف struct إسمه Book يمثل المعلومات التي يمكن أن يتضمنها أي كتاب كعنوانه, إسم المؤلف, سعره و عدد صفحاته.
بعدها قمنا بتعريف دالة إسمها printInfo عند استدعاءها نمرر لها عنوان كائن من Book موجود في الذاكرة فتقوم بطباعة قيمه بشكل مرتب.

في الأخير قمنا بإنشاء كائن من Book و إعطاؤه قيم, و من ثم تمرير عنوانه في الذاكرة للدالة printInfo() حتى تقوم بطباعة قيمه.

مثال

main.cpp
#include <iostream>

using namespace std;

// يحتوي على 4 متغيرات Book إسمه struct هنا قمنا بتعريف
struct Book {
    string title;
    string author;
    double price;
    int numberOfPages;
};

// فتقوم بطباعة كل قيم المتغيرات الموجودة فيه Book عند استدعاءها نمرر لها عنوان كائن من printInfo هنا قمنا بتعريف دالة إسمها
void printInfo(struct Book* book)
{
    cout << "Title: " << book->title << "\n";
    cout << "Author: " << book->author << "\n";
    cout << "Price: " << book->price << "$\n";
    cout << "Number of pages: " << book->numberOfPages << "\n";
}

// main() هنا قمنا بتعريف الدالة
int main()
{
	// book إسمه Book هنا قمنا بتعريف كائن من
    struct Book book;

	// book هنا قمنا بإعطاء قيم لمتغيرات الكائن
    book.title = "C++ for beginners";
    book.author = "Mhamad Harmush";
    book.price = 9.99;
    book.numberOfPages = 420;
	
	// لها حتى تقوم بطباعة القيم الموجودة فيه book و تمرير عنوان الكائن printInfo() هنا قمنا باستدعاء الدالة
	printInfo(&book);

    return 0;
}
		

سنحصل على النتيجة التالية عند التشغيل.

Title: C++ for beginners
Author: Mhamad Harmush
Price: 9.99$
Number of pages: 420
		
إعلان
دورة PHP و MySQL في هذه الدورة ستتعلم أساسيات لغة PHP و أساسيات MySQL و من ثم ستتعلم كيفية بناء مشروع نظام طلبات مع لوحة التحكم تطبق فيه جميع الأساسيات التي تعلمتها. سعر الدورة الآن هو 20 ريال سعودي فقط بدلاً من 520 ريال
سعر الدورة الآن هو 20 ريال سعودي فقط بدلاً من 520 ريال
تعلم الآن

الدورات

أدوات مساعدة

أقسام الموقع

دورات
مقالات كتب مشاريع أسئلة