سؤال

عندما لفظيا نتحدث عن طرق, أنا لست متأكدا من ما إذا كان استخدام كلمة الحجة أو المعلمة أو أي شيء آخر.أما الطريقة الأخرى من الناس تعرف ما أعني ، ولكن ما هو الصحيح و ما هو تاريخ من الشروط ؟

أنا C# مبرمج, ولكن أنا أيضا أتساءل ما إذا كان الناس استخدام مصطلحات مختلفة في لغات مختلفة.

للعلم أنا من العصاميين دون خلفية في علوم الكمبيوتر.(من فضلك لا تقل لي أن قراءة رمز كاملة لأن أنا أسأل هذا لصالح غيرهم من الناس الذين لم يكن لديك بالفعل نسخة من ستيف ماكونيل'ق رائعة الكتاب.)

ملخص

التوافق العام في الآراء يبدو أنه موافق على استخدام هذه المصطلحات بالتبادل في بيئة فريق.ربما باستثناء عندما كنت في تحديد دقة المصطلحات ؛ ثم يمكنك أيضا استخدام "الرسمية حجة/المعلمة" و "الفعلية حجة/المعلمة" إلى إزالة الغموض.

هل كانت مفيدة؟

المحلول

المتغير هو متغير في طريقة التعريف.عندما الأسلوب يسمى الحجج هي البيانات التي تمر في طريقة المعلمات.

public void MyMethod(string myParam) { }

...

string myArg1 = "this is my argument";
myClass.MyMethod(myArg1);

نصائح أخرى

المعلمة هو متغير في إعلان الوظيفة.

الحجة هو القيمة الفعلية لهذا المتغير الذي يحصل تمريرها إلى الدالة.

هناك بالفعل ويكيبيديا حول هذا الموضوع (انظر المعلمة) أن يحدد ويميز شروط المعلمة و الحجة.باختصار, المعلمة هي جزء من وظيفة/الإجراءات/طريقة التوقيع حجة هي القيمة الفعلية الموردة في وقت التشغيل و/أو الاتصال على-موقع المعلمة.

مقالة ويكيبيديا أيضا حيث غالبا ما تستخدم بشكل مترادف (خاصة عند التفكير حول التعليمات البرمجية بشكل غير رسمي):

على الرغم من أن المعايير هي أيضا عادة يشار إلى حجج حجج أكثر بشكل صحيح من حيث الفكر القيم الفعلية أو تعيين المراجع إلى المعلمة المتغيرات عندما روتين فرعي يسمى في وقت التشغيل.

بالنظر إلى المثال التالي الدالة في ج أن يضيف اثنين من الاعداد الصحيحه ، x و y ويشار إلى معالمها:

int add(int x, int y) {
    return x + y;
}

في مكالمة الموقع باستخدام add, مثل المثال الموضح أدناه ، 123 و 456 سيكون يشار إلى الحجج المكالمة.

int result = add(123, 456);

أيضا, بعض اللغة المواصفات (أو الوثائق الرسمية) اختيار استخدام المعلمة أو الحجة حصريا و استخدام الصفات مثل الرسمية و الفعلية بدلا من ذلك إلى إزالة الغموض بين الحالتين.على سبيل المثال, C/C++ الوثائق غالبا ما يشير إلى وظيفة المعلمات كما من الحجج و استدعاء دالة الحجج كما الفعلية الحجج.انظر على سبيل المثال "الرسمية و الفعلية الحجج"في Visual C++ لغة الإشارة.

بسيطة:

  • PARAMETER → PLACEHOLDER (هذا يعني نائبا ينتمي إلى وظيفة التسمية تستخدم في وظيفة الجسم)
  • ARGUMENT → ACTUAL قيمة (هذا يعني القيمة الفعلية والتي يتم تمريرها من خلال وظيفة الدعوة)

معلمة هو شيء لديك لملء عند استدعاء دالة.ما كنت وضعت في ذلك هو الحجة.

ببساطة تعيين:الحجة يذهب إلى المعلمة حجة هو قيمة المعلمة.

قليلا مزيد من المعلومات على:http://en.wikipedia.org/wiki/Parameter_(computer_science)#Parameters_and_arguments

المعلمة هو متغير في إعلان الوظيفة.

الحجة هو القيمة الفعلية لهذا المتغير الذي يحصل تمريرها إلى الدالة.enter image description here

استخدام المصطلحات المعلمات و الحجج التي قد يساء استخدامها إلى حد ما بين المبرمجين و حتى الكتاب.عند التعامل مع أساليب مصطلح المعلمة يستخدم لتحديد العناصر النائبة في طريقة التوقيع ، في حين أن مصطلح الحجج الفعلية القيم التي تمر في الأسلوب.

MCSD Cerfification أدوات (امتحان 70-483) البرمجة في C#, الطبعة 1 ، Wrox, 2013

في العالم الحقيقي سيناريو

// Define a method with two parameters
int Sum(int num1, int num2)
{
   return num1 + num2;
}

// Call the method using two arguments
var ret = Sum(2, 3);

في التحرير, أنا في كثير من الأحيان وضعت في كيف ينسى الناس:هيكل اللغات على أساس اللغات الطبيعية.

في اللغة الإنجليزية

و "المعلمة" عنصر نائب.وضعوا صيغة الرد في اللغة المنطوقة.بحكم التعريف ، هو حزب الدعوة, الحد من الاستجابة.

و "الحجة" هو الموقف الذي يجري النظر فيه.أنت تجادل رأيك:تفكر في حجة.

الفرق الرئيسي

المواضيعية دور حجة العميل.المواضيعية دور المعلمة هو المتلقي.

التفاعلات

أعتقد من حجة الجزء الذكور ، مما يجعل المعلمة الجزء الإناث.الحجة يذهب إلى المعلمة.

الاستخدام

معلمة عادة المستخدمة في التعاريف.حجة هو عادة المستخدمة في الدعاء.

الأسئلة

تنتهي الجملة لجعله أقل المتنافرة.

(أ) بالحديث عن التعريف:

  1. ما الحجة التي سيتم استخدامها []?
  2. ما [] هذه المعلمة []?

(ب) بالحديث عن الاحتجاج:

  1. ما المعلمة سوف تستخدمها ، []?
  2. ما [] أن يكون [] هذه المعلمة ؟

إجابات

(أ)

  1. على/في/ضد/مع هذه المعلمة
  2. الحجة(s) ...تأخذ

(ب)

  1. و ما هي بعض الأمثلة على الحجج
  2. الحجة(s) ...تستخدم على/في/ضد/مع

التداخل

كما يمكنك أن تتخيل ، بعد الرد على:في اللغة المحكية ، هذه الكلمات سوف تنتج أحيانا متطابقة الردود!

لذلك ، كقاعدة عامة:

  • عادة إذا كان هناك من يريد معلومات المعلمة, أنها تريد أن تعرف أكثر عن نوع المتغير اسم ، وما إلى ذلك.فإنها قد تصبح مشوشة إذا كنت تعطي إلا سبيل المثال الحجج.

    • عادة ما إذا كان شخص ما يريد حجة المعلومات, أنها تريد أن تعرف ما القيمة التي تم تمريرها إلى الدالة أو المعلمة(s).

على المعلمات وظيفة/طريقة وصف القيم أنه يستخدم لحساب النتيجة.

على الحجج من هي القيم تعيين هذه المعلمات خلال دعوة خاصة من وظيفة/طريقة.

أو قد يكون أبسط من أن تذكر مثل هذا ، في حالة اختياري الحجج الأسلوب:

public void Method(string parameter = "argument") 
{

}

parameter هي المعلمة قيمته ، "argument" الحجة :)

المعلمات و الحجج

جميع المصطلحات المختلفة التي لها علاقة مع المعلمات و الحجج يمكن أن يكون مربكا.ومع ذلك ، إذا كنت الحفاظ على عدد قليل من نقاط بسيطة في الاعتبار ، سوف تكون قادرة على التعامل بسهولة مع هذه الشروط.

  1. على المعلمات رسمية وظيفة مدرجة في تعريف الدالة و تستخدم في تعريف الدالة.A معلمة رسمية (من أي نوع) هو نوع من الفراغ أو نائبا يتم تعبئة مع شيء عندما يتم استدعاء الدالة.
  2. وهو الحجة هو الشيء الذي يستخدم في ملء معلمة رسمية.عند كتابة استدعاء دالة ، فإن الحجج المذكورة في بين قوسين بعد اسم الدالة.عند استدعاء دالة إعدام الحجج في الوتر الرسمي المعلمات.
  3. شروط الاتصال عن طريق القيمة و دعوة-بالرجوع الرجوع إلى آلية التي تستخدم في توصيل-في العملية.في الدعوة-من قبل-طريقة القيمة فقط قيمة الوسيطة المستخدمة.في هذه الدعوة عن طريق القيمة آلية رسمية المعلمة هو متغير محلي وهذا هو تهيئة إلى قيمة الحجج.في دعوة-بالرجوع آلية الحجة هو متغير ، كامل متغير يستخدم.في إشارة النداء تلو آلية حجة متغير هو الاستعاضة عن معلمة رسمية بحيث أي تغيير يتم الرسمي المعلمة فعلا إلى الحجة متغير.

المصدر:المطلق C++, والتر Savitch

وهذا هو ،

enter image description here

الشروط إلى حد ما قابلة للتبديل.التمييز هو موضح في إجابات أخرى أكثر بشكل صحيح عن الشروط معلمة رسمية اسم المستخدم داخل الجسم من وظيفة ، المعلمة قيمة المتوفرة في الموقع (الرسمية حجة و الحجة هي أيضا مشتركة).

لاحظ أيضا أنه في الرياضيات, تعبير الحجة هو الآن أكثر شيوعا ، المعلمة وعادة ما يعني شيئا مختلفا تماما (على الرغم من المعلمة في حدودي المعادلة هو الأساس الحجة أن اثنين أو أكثر من الوظائف).

هذا المثال قد تساعد.

int main () {
   int x = 5; 
   int y = 4;

   sum(x, y); // **x and y are arguments**
}

int sum(int one, int two) { // **one and two are parameters**
   return one + two;
}

دعونا نقول كنت الطيران.يمكنك بناء طائرة.تثبيت مقاعد في ذلك.ثم يمكنك ملء الطائرة مع الركاب وإرسالها في مكان ما.الركاب (أو بالأحرى بعض المكانية-وقتيا غيرت نسخة منه) النزول.في اليوم التالي كنت ترغب في إعادة استخدام نفس الطائرة و نفس المقاعد ، ولكن مع الركاب مختلفة هذه المرة.

الطائرة الخاصة بك وظيفة.

المعلمات المقاعد.

الحجج هي الركاب التي تذهب في تلك المقاعد.

تذكر دائما أن:- الحجج مرت في حين أن المعلمات المستلمة.

حجة هو إنشاء مثيل من المعلمة.

نعم!المعلمات والحجج لها معان مختلفة, والتي يمكن تفسيرها بسهولة على النحو التالي:

وظيفة المعلمات هي الأسماء المدرجة في تعريف الدالة.

وظيفة الحجج هي القيم الحقيقية التي تم تمريرها إلى (وردت) وظيفة.

تفسيرات بسيطة بدون كود

و "المعلمة" هو عام جدا ، شيء واسع ، ولكن "حجة:هو محدد جدا, الشيء الملموس.ويتضح هذا هو أفضل طريق الأمثلة اليومية:

مثال 1:آلات بيع المال هو المعلمة $2.00 هو الحجة

معظم الآلات تأخذ المدخلات عودة الانتاج.على سبيل المثال آلة يأخذ كمدخل:المال و العوائد:المشروبات الغازية الإخراج.في هذه الحالة بالذات ، فإنه يقبل كمعلمة:المال.

ثم ما هي الحجة ؟ حسنا إذا وضعت 2.00 دولار في الجهاز ، ثم الحجة:$2.00 - هو محدد جدا المدخلات المستخدمة.

مثال 2:سيارات - البنزين المعلمة

دعونا النظر في السيارة:تقبل البنزين (البنزين الخالي من الرصاص) كمدخل.ويمكن القول أن هذه الآلات تقبل المعلمات من نوع:البنزين.الحجة سيكون بالضبط مدخلات محددة أضع في سيارتي.على سبيل المثالفي حالتي الحجة ليكون:40 لترا من البنزين الخالي من الرصاص/البنزين.

مثال 3 - وضع على الحجج

حجة هو معين و محدد من المدخلات.اعتقد ان الجهاز يأخذ الشخص كمدخل وتحولهم إلى شخص لا كاذب.

ثم ما هي الحجة ؟ الحجة سوف يكون شخص معين الذي هو في الواقع وضع في الجهاز.على سبيل المثالإذا كولن باول في الجهاز ثم الحجة كولن باول.

لذا على المعلمة أن يكون الشخص مفهوما مجردا ، ولكن الحجة سيكون دائما شخص معين مع خاصة اسم الذي وضع في الجهاز.والحجة هي محددة وملموسة.

هذا هو الفرق.بسيطة.

الخلط ؟

تعليق و سوف إصلاح التفسير.

أو حتى أبسط...

الحجج !

المعلمات بها !

وكلاهما لا يكون هناك فرق كبير في الاستخدام في ج ، سواء من حيث تستخدم في الممارسة العملية.في الغالب الحجج تستخدم في كثير من الأحيان مع وظائف.القيمة التي تم تمريرها مع وظيفة دعوة بيان ما يسمى حجة ، و المعلمة سيكون المتغير الذي نسخ القيمة في تعريف الدالة (كما دعا معلمة رسمية).

int main ()
{
   /* local variable definition */
   int a = 100;
   int b = 200;
   int ret;

   /* calling a function to get max value */
   ret = max(a, b);

   printf( "Max value is : %d\n", ret );

   return 0;
}

/* function returning the max between two numbers */
int max(int num1, int num2) 
{
   /* local variable declaration */
   int result;

   if (num1 > num2)
      result = num1;
   else
      result = num2;

   return result; 
}

في التعليمات البرمجية أعلاه num1 و num2 رسمية المعلمات a و b هي الحجج الفعلية.

أوراكل جافا الدروس تحديد هذا التمييز هكذا:"المعلمات يشير إلى قائمة من المتغيرات في طريقة الإعلان.الحجج هي القيم الفعلية التي يتم تمريرها عند استدعاء أسلوب.عند استدعاء الأسلوب ، فإن الحجج المستخدمة يجب أن تتطابق مع إعلان المعلمات في نوع والنظام."

مناقشة أكثر تفصيلا من المعلمات و الحجج:https://docs.oracle.com/javase/tutorial/java/javaOO/arguments.html

متحدثا منطقيا في الواقع نحن نتحدث عن نفس الشيء.ولكن أعتقد أن استعارة بسيطة قد تكون مفيدة في حل هذه المعضلة.

إذا الاستعارات يمكن أن يسمى الاتصال المختلفة النقطة يمكننا مساواة لهم نقاط التوصيل على الحائط.في هذه الحالة يمكن أن نعتبر المعلمات و الحجج على النحو التالي ؛

المعلمات هي مآخذ التوصيل-النقطة التي قد تتخذ مختلف الأشكال المختلفة.ولكن فقط بعض أنواع من المقابس يصلح لهم.
الحجج سيتم الفعلية المقابس التي من شأنها أن يكون موصول نقاط التوصيل/مآخذ لتفعيل بعض المعدات.

عندما نخلق طريقة (وظيفة) في جاوة ، طريقة مثل هذا..

data-type name of the method (data-type variable-name)

في قوسين ، هذه هي المعايير, و عند استدعاء الأسلوب (وظيفة) ونحن تمرير قيمة هذه المعلمة والتي تسمى الحجج.

وفقا يوسف Alabahari كتاب "C# باختصار" (C# 7.0, p.49) :

static void Foo (int x)
{
    x = x + 1; // When you're talking in context of this method x is parameter
    Console.WriteLine (x);
}
static void Main()
{
    Foo (8); // an argument of 8. 
             // When you're talking from the outer scope point of view
}

في بعض اللغات البشرية (afaik الإيطالية, الروسية) مرادفات وتستخدم على نطاق واسع هذه الشروط.

  • المعلمة = معلمة رسمية
  • الحجة = المعلمة الفعلية

في أساتذة الجامعات استخدام كل نوع من الأسماء.

المعلمة هي متغير في تعريف الدالة
الحجة هي القيمة من المعلمة

<?php

    /* define function */
    function myFunction($parameter1, $parameter2)
    {
        echo "This is value of paramater 1: {$parameter1} <br />";
        echo "This is value of paramater 2: {$parameter2} <br />";
    }

    /* call function with arguments*/
    myFunction(1, 2);

?>

معلمات المتغيرات التي وردت من خلال وظيفة.وبالتالي فهي واضحة في تعريف الدالة.أنها تحتوي على اسم متغير مع نوع البيانات.الحجج الفعلية القيم التي تم تمريرها إلى وظيفة أخرى.ولهذا السبب يمكننا أن نرى لهم في استدعاء دالة.هم فقط القيم دون نوع البيانات

المعلمات رسمية عن وظيفة مدرجة في تعريف الدالة و تستخدم في تعريف الدالة.رسمي المعلمة (من أي نوع) هو نوع من الفراغ أو النائب الذي شغل في شيء عندما يتم استدعاء الدالة.

وهو الحجة هو الشيء الذي يستخدم في ملء معلمة رسمية.عند كتابة استدعاء دالة ، فإن الحجج المذكورة بين قوسين بعد اسم الدالة.عند استدعاء دالة يتم تنفيذها ، فإن الحجج في الوتر الرسمي المعلمات.

شروط الاتصال عن طريق القيمة و دعوة-بالرجوع الرجوع إلى الآلية التي تستخدم في توصيل-في العملية.في الدعوة-من قبل-طريقة القيمة فقط قيمة الوسيطة المستخدمة.في هذه الدعوة-من قبل-قيمة آلية رسمية المعلمة هو متغير محلي تهيئته إلى قيمة الحجج.في إشارة النداء تلو آلية الحجة هو متغير بالكامل متغير يستخدم.في إشارة النداء تلو آلية الحجة متغير هو الاستعاضة عن معلمة رسمية بحيث أن أي تغيير يتم الرسمي المعلمة فعلا إلى حجة متغير.

المعلمات هي المتغيرات التي يتم استخدامها لتخزين البيانات التي تم تمريرها إلى وظيفة وظيفة للاستخدام. الحجج هي البيانات الفعلية التي تم تمريرها إلى الدالة عندما يتم استدعاء:

// x and y are parameters in this function declaration
function add(x, y) {
  // function body
  var sum = x + y;
  return sum; // return statement
}

// 1 and 2 are passed into the function as arguments
var sum = add(1, 2);

اعتقدت أنه من خلال وأدركت إجابتي السابقة كانت خطأ.هنا أفضل بكثير تعريف

{تخيل كرتون البيض:علبة من النقانق الروابط:و خادمة } وتمثل هذه العناصر المهمة اللازمة لإعداد يسمى :(استخدام أي اسم:يتيح القول الطبخ اسم الوظيفة).

خادمة طريقة .

( يجب أن __نداء_ أو تسأل هذا طريقة لجعل وجبة الإفطار)(قانون من صنع وجبة الإفطار وظيفة دعا الطبخ)_

البيض و النقانق المعلمات :

(لأن عدد البيض وعدد من النقانق كنت ترغب في تناول الطعام هو __متغيرة_ .)_

قرارك هو حجة :

ويمثل __القيمة_ اختيار عدد من البيض و/أو النقانق كنت الطهي ._

{ذاكري}

_" عند استدعاء الخادمة وتطلب منها تقديم إفطار مجاني, أنها __يقول_ معك حول كيفية العديد من البيض و النقانق يجب عليك تناول الطعام.إنها قلقة من الكولسترول" __

( الحجج ، إذن ، هي قيم مزيج من المعلمات كنت قد أعلنت وقررت أن تمر على وظيفة الخاص بك )

أوضح ذلك تماما في معلمة الحاسوب (برمجة) - ويكيبيديا

فضفاضة ، المعلمة هي من النوع حجة مثيل.

في تعريف الدالة f(x) = x*x المتغير x هي معلمة ، في استدعاء دالة f(2) قيمة `2 هي الحجة وظيفة.

و المعلمة - ويكيبيديا

في برمجة الكمبيوتر, اثنين مفاهيم المعلمة تستخدم عادة ، يشار المعلمات و الحجج—أو أكثر رسميا كما معلمة رسمية و المعلمة الفعلية.

على سبيل المثال ، في تعريف وظيفة مثل

y = f(x) = x + 2,

x هو معلمة رسمية (إن المعلمة) من وظيفة محددة.

عندما وظيفة يتم تقييم لقيمة معينة ، كما في

f(3): or, y = f(3) = 3 + 2 = 5,

هو المعلمة الفعلية (إن الحجة) التقييم من خلال وظيفة محددة;بل هو بالنظر إلى القيمة (القيمة الفعلية) التي هي محل معلمة رسمية من وظيفة محددة.(في عارضة شروط الاستخدام المعلمة و الحجة قد تكون عن غير قصد متبادل ، وبالتالي استخدمت بشكل غير صحيح.)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top