Hva er forskjellen mellom en krangel og en parameter?

stemmer
490

Når verbalt snakker om metoder, er jeg aldri sikker på om å bruke ordet argument eller parameter , eller noe annet. Uansett andre folk vet hva jeg mener, men hva er riktig og hva som er historien om begrepene?

Jeg er en C # programmerer, men jeg lurer også på om folk bruker ulike begreper på forskjellige språk.

For posten jeg er selvlært uten bakgrunn i informatikk. (Vennligst ikke fortell meg å lese Code Complete fordi jeg spør dette til fordel for andre mennesker som ikke allerede har en kopi av Steve McConnell 's fantastiske bok.)

Sammendrag

Den generelle konsensus synes å være at det er OK å bruke disse begrepene om hverandre i et team miljø. Kanskje bortsett fra når du definerer presis terminologi; så kan du også bruke formelle argumentet / parameter og faktiske argument / parameter til disambiguate.

Publisert på 01/10/2008 klokken 08:57
kilden bruker
På andre språk...                            


33 svar

stemmer
235

Parameter er variabel i erklæringen av funksjon.

Argument er den faktiske verdien av denne variabelen som blir sendt for å fungere.

Svarte 01/10/2008 kl. 09:00
kilden bruker

stemmer
27

En parameter er noe du må fylle ut når du ringer en funksjon. Hva du putter i det argumentet.

Bare still: argumentet går inn i parameteren, et argument er verdien av parameteren.

Litt mer info på: http://en.wikipedia.org/wiki/Parameter_(computer_science)#Parameters_and_arguments

Svarte 01/10/2008 kl. 09:03
kilden bruker

stemmer
571

En parameter er en variabel i en metode definisjon. Når en metode kalles, argumentene er de data du passerer inn i metodens parametre.

public void MyMethod(string myParam) { }

...

string myArg1 = "this is my argument";
myClass.MyMethod(myArg1);
Svarte 01/10/2008 kl. 09:03
kilden bruker

stemmer
5

De parametere for en funksjon / metoden beskrevet eder de verdier som den bruker for å beregne dens resultat.

De argumenter av en er-verdier som er tilordnet disse parametre i løpet av en bestemt samtale fra den funksjon / metode.

Svarte 01/10/2008 kl. 09:04
kilden bruker

stemmer
61

Det er allerede en Wikipedia inngang på emnet (se Parameter ) som definerer og skiller det gjelder parameteren og argument . Kort sagt, er en parameter del av funksjonen / prosedyre / metode signatur og et argument er den faktiske verdien som leveres under kjøring, og / eller ring-område for parameteren.

Wikipedia-artikkelen sier også at de to begrepene brukes ofte synonymt (spesielt når resonnement om kode uformelt):

Selv om parametrene blir også ofte referert til som argumenter, er argumenter mer korrekt oppfattet som de virkelige verdier eller referanser som er tilordnet parameter variablene når subrutinen kalles under kjøring.

Gitt den følgende eksempel funksjon i C som legger to heltall, xog yvil bli referert til som dens parametere:

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

Ved et anrop anlegget ved hjelp av add, slik som det eksempel som er vist nedenfor, 123 og 456 vil bli referert til som argumenter i samtalen.

int result = add(123, 456);

Også noen språk spesifikasjoner (eller formell dokumentasjon) velger å bruke parameter eller argument utelukkende og bruke adjektiver som formell og faktisk i stedet for å disambiguate mellom de to sakene. For eksempel, refererer C / C ++ dokumentasjon ofte å fungere parametre som elle argumenter og funksjon anrops argumenter som selve argumenter . For et eksempel, se “ formelle og reelle argumenter ” i Visual C ++ Språk Reference .

Svarte 01/10/2008 kl. 09:27
kilden bruker

stemmer
5

Betingelsene er litt om hverandre. Skillet som er beskrevet i andre svar er mer riktig uttrykt med den betingelser formell parameter for det navnet som brukes inne i kroppen av den funksjon og parameteren for den verdien som leveres ved anropet stedet ( formell argument og argument er også vanlig).

Vær også oppmerksom på at i matematikk, begrepet argumentet er langt mer vanlig og parameter betyr som regel noe helt annet (selv om parameteren i en parametrisk ligning er egentlig det argumentet til to eller flere funksjoner).

Svarte 01/10/2008 kl. 09:37
kilden bruker

stemmer
2

Eller enda enklere ...

Argumenter i!

Parametere ut!

Svarte 15/06/2013 kl. 06:09
kilden bruker

stemmer
5

Dette eksempelet kan hjelpe.

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;
}
Svarte 26/08/2013 kl. 15:06
kilden bruker

stemmer
2

De begge har ikke mye forskjell i bruk i C, både begrepene brukes i praksis. Stort sett argumenter brukes ofte sammen med funksjoner. Verdien gått med funksjonen kall uttalelsen heter det argumentet, og parameteren vil være den variable som kopierer verdien i funksjonsdefinisjonen (kalt formell parameter).

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; 
}

I koden ovenfor num1, og num2er formelle parametere og aog ber faktiske argumenter.

Svarte 27/10/2013 kl. 14:25
kilden bruker

stemmer
5

Eller kanskje det er enda enklere å huske som dette, i tilfelle valgfrie argumenter for en metode:

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

}

parameterer parameteren, dens verdi, "argument"er argumentet :)

Svarte 22/12/2013 kl. 04:21
kilden bruker

stemmer
5

La oss si at du er et flyselskap. Du bygger et fly. Du installerer seter i den. Deretter fyller du flyet med passasjerer og sende den et sted. Passasjerene (eller heller, noe rom-tid endret versjon av disse) i land. Neste dag, du gjenbruke samme plan, og samme seter, men med forskjellige passasjerer denne gangen.

Flyet er din funksjon.

Parametrene er setene.

Argumentene er de passasjerene som går i disse setene.

Svarte 11/01/2014 kl. 20:16
kilden bruker

stemmer
3

Et argument er en instans av et parameter.

Svarte 18/03/2014 kl. 06:56
kilden bruker

stemmer
7

I redigering, er jeg ofte skremt over hvor folk glemmer: struktur språk er basert på naturlige språk.

På engelsk

En "parameter" er en plassholder. De satte responsen format, i talespråk. Per definisjon er det fest i samtalen, begrense respons.

En "argument" er en posisjon som blir vurdert. Du argumenterer din mening: du vurdere et argument.

hoved~~POS=TRUNC forskjellen~~POS=HEADCOMP

Den tematiske rolle i et argument er middel. Den tematiske rolle parameter er mottaker.

interaksjoner

Tenk på argumentet som hanndelen, slik at parameteren i hunndelen. Argumentet går inn i parameteren.

bruk

En parameter blir vanligvis anvendt i definisjonene. Et argument blir vanligvis anvendt i kjøringene.

spørsmål

Fullfør setningen å gjøre det mindre dissonerende.

(A) sett fra en definisjon:

  1. Hva argumentet vil bli brukt []?
  2. Hva [] vil denne parameteren []?

(B) sett fra en påkalling:

  1. Hva parameter vil du bruke, []?
  2. Hva [] blir [] denne parameteren?

svar

(EN)

  1. på / i / mot / med denne parameteren
  2. argument (s) ... ta

(B)

  1. og hva er noen eksempler på argumenter
  2. argument (s) ... brukes på / i / mot / med

overlapp

Som du kan forestille deg, etter å ha besvart: i talespråk, vil disse ordene noen ganger gi identiske svar!

Så, som en regel:

  • Vanligvis hvis noen ønsker parameterinformasjon, de ønsker å vite mer om hvilken type, variabelnavnet, etc. De kan bli forvirret hvis du bare gi eksempel argumenter.

    • Vanligvis hvis noen ønsker argument informasjon, de ønsker å vite hva verdien du sendt til en funksjon eller dens parameter (e).
Svarte 02/06/2014 kl. 10:25
kilden bruker

stemmer
10

Bruken av begrepene parametere og argumenter har blitt misbrukt noe blant programmerere og selv forfattere. Ved behandling med metoder, begrepet parameter brukes til å identifisere plassholderne i fremgangsmåten signaturen, mens uttrykket argumenter er de virkelige verdier som man passerer inn til fremgangsmåten.

MCSD Cerfification Toolkit (Exam 70-483) programmering i C # , første utgave, WROX 2013

Reelle case scenario

// 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);
Svarte 23/06/2014 kl. 13:31
kilden bruker

stemmer
2

Ok la oss være ekte, for alle praktiske formål de er praktisk talt det samme .......... ok, men for de pedants kan det være en teknisk forskjell.

En "parameter" er en veldig generell bred ting, men en argumet er en veldig spesiell ting. Flott, takk - så det er veldig nyttig. hmmm: kanskje et eksempel er i orden.

En enkel forklaring

La oss ta et eksempel: Jeg har en maskin. Slik fungerer det: Jeg setter ting inn i maskinen i den ene enden, og i den andre enden, kommer en ny "produkt" ut av maskinen. Hva går inn i denne maskinen? Hva som helst. Hva kommer ut? . Vel en raffinert versjon av hva som foregår i f.eks jeg kan sette mel og sukker i en ende av denne maskinen, og ut av det andre kommer: en kake. du skjønner poenget.

Nå forskjellige maskiner har ulike regler. En spesiell maskin kan bare motta bensin (blyfri) som en inngang. Det kan sies at disse maskinene godta parametere av typen: bensin.

Et eksempel

Hva er da et argument? Et argument er et spesielt og spesifikt eksempel på hva som er satt inn i maskinen. Anta at min maskin tar folk som en inngang ( folk ville være parameteren for denne maskinen ) og la oss anta at denne maskinen blir disse menneskene, til folk som ikke mener folk (hva en fantastisk maskin!). Hva er da et argument? Argumentet vil være den personen som er faktisk satt inn i maskinen. for eksempel hvis George Bush er satt inn i maskinen så argumentet vil være George Bush. Hvis Kim Kardiashian var der da hun ville være et argument for. Så parameteren vil være folk som et abstrakt begrep, men argumentet vil alltid være en spesiell person med et bestemt navn som er satt inn i maskinen.

Enda et eksempel

for eksempel en metode (dvs en spesiell maskin som svinger innganger til utganger) kan akseptere et heltall som en parameter. La oss anta at heltallet 5 er "gått inn" funksjonen (dvs. la oss anta at du setter nummer 5 i maskinen). I dette tilfellet er det hele tall "5" ville være argumentet, og den "parameter" akseptert av denne metode ville være av typen heltall.

Det er forskjellen. Enkel.

Jeg håper dette hjelper. Hvis du er forvirret bare kommentere, så skal jeg prøve å fikse det opp.

Svarte 28/10/2015 kl. 21:22
kilden bruker

stemmer
2

Oracles Java tutorials definere dette skillet thusly:.. "Parametere refererer til listen over variabler i en metode erklæring Argumenter er de faktiske verdier som er gått i når metoden startes Når du starter en metode, argumentene som brukes må samsvare med erklæringen parametre i type og orden."

En mer detaljert diskusjon av parametere og argumenter: https://docs.oracle.com/javase/tutorial/java/javaOO/arguments.html

Svarte 10/03/2016 kl. 17:36
kilden bruker

stemmer
1

Når vi skaper metoden (funksjon) i Java, den metode som dette ..

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

I parentes, er disse parametrene, og når vi kaller metoden (funksjon) vi passerer verdien av denne parameter, som er kalt argumentene.

Svarte 23/03/2016 kl. 07:59
kilden bruker

stemmer
0

Parametere er variablene som mottas av en function.Hence de er synlige i funksjon declaration.They inneholde den variable navn med sin datatype. Argumenter er faktiske verdier som sendes til en annen funksjon. dvs hvorfor vi kan se dem i funksjonskall. De er bare verdier uten deres datatype

Svarte 27/11/2016 kl. 18:26
kilden bruker

stemmer
4

Parametere og argumenter

Alle de ulike begrepene som har å gjøre med parametere og argumenter kan være forvirrende. Men hvis du holder noen enkle punkter i tankene, vil du være i stand til å håndtere disse vilkårene.

  1. De formelle parametere for en funksjon, er oppført i funksjon deklarasjonen og brukes i hoveddelen av funksjonsdefinisjon. En formell parameter (av noe slag) er en slags blank eller plassholder som er fylt på med noe når funksjonen kalles.
  2. Et argument er noe som brukes til å fylle ut en formell parameter. Når du skriver ned et funksjonskall, er argumentene oppført i parentes etter funksjonsnavnet. Når funksjonskallet er utført, er argumentene koblet til de formelle parameter.
  3. Uttrykkene ring-av-verdi og ring-av-referanse refererer til den mekanisme som brukes i innplugging i prosessen. I call-ved-verdi metode kun verdien av argumentet blir brukt. I dette anropet-ved-verdi mekanisme, er den formelle parameter en lokal variabel som blir initialisert til verdien av det tilsvarende argumentet. I call-by-referanse mekanisme argumentet er en variabel og hele den variable benyttes. I call-ved-referanse mekanisme argumentet variable er substituert for den formelle parameter, slik at enhver endring som er gjort til den formelle parameter er faktisk laget til argumentet variabel.

Kilde: Absolute C ++, Walter Savitch

Det er,

skriv bildebeskrivelse her

Svarte 06/04/2017 kl. 10:37
kilden bruker

stemmer
23

Enkel:

  • P ARAMETER → P LACEHOLDER (Dette betyr at en plassholder tilhører funksjon navne og brukes i hoveddelen av funksjonen)
  • En RGUMENT → A CTUAL VERDI (Dette betyr at en aktuell verdi som passeres av den funksjon ringer)
Svarte 25/04/2017 kl. 05:38
kilden bruker

stemmer
2

Logisk sett er vi faktisk snakker om det samme. Men jeg tror en enkel metafor vil være nyttig for å løse dette dilemmaet.

Hvis metaforer kan kalles ulike tilkoblingspunkt kan vi likestille dem til å plugge punkter på en vegg. I dette tilfellet kan vi vurdere parametere og argumenter som følger;

Parametere er fotstykkene til plug-punkt som kan ta forskjellige former. Men bare visse typer plugger passe dem.
Argumenter vil være selve pluggene som ville bli plugget inn i plugg punkter / holdere for å aktivere visse utstyr.

Svarte 29/04/2017 kl. 12:15
kilden bruker

stemmer
0

De formelle parametere for en funksjon, er oppført i funksjon deklarasjonen og brukes i hoveddelen av funksjonsdefinisjon. En formell parameter (av noe slag) er en slags blank eller plassholder som er fylt på med noe når funksjonen kalles.

Et argument er noe som brukes til å fylle ut en formell parameter. Når du skriver ned et funksjonskall, er argumentene oppført i parentes etter funksjonsnavnet. Når funksjonskallet er utført, er argumentene koblet til de formelle parameter.

Uttrykkene ring-av-verdi og ring-av-referanse refererer til den mekanisme som brukes i innplugging i prosessen. I call-ved-verdi metode kun verdien av argumentet blir brukt. I dette anropet-ved-verdi mekanisme, er den formelle parameter en lokal variabel som blir initialisert til verdien av det tilsvarende argumentet. I call-by-referanse mekanisme argumentet er en variabel og hele den variable benyttes. I call-ved-referanse mekanisme argumentet variable er substituert for den formelle parameter, slik at enhver endring som er gjort til den formelle parameter er faktisk laget til argumentet variabel.

Svarte 13/06/2017 kl. 08:32
kilden bruker

stemmer
3

Ja! Parametere og argumenter har forskjellige betydninger, som lett kan forklares som følger:

Funksjonsparametere er navnene som er oppført i funksjonsdefinisjonen.

Funksjons Argumentene er de virkelige verdiene som sendes til (og mottatt av) funksjonen.

Svarte 28/06/2017 kl. 09:10
kilden bruker

stemmer
0

Parametere er variabler som brukes til å lagre de data som er ført inn i en funksjon for den funksjon som skal brukes. Argumenter er de faktiske dataene som er gått inn i en funksjon når den startes:

// 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);
Svarte 26/07/2017 kl. 11:37
kilden bruker

stemmer
5

Husk alltid at: - Argumenter sendes mens parametrene er mottatt.

Svarte 22/09/2017 kl. 08:48
kilden bruker

stemmer
0

Jeg trodde det gjennom og innså min forrige svaret var galt. Her er en mye bedre definisjon

{ Tenk deg en kartong med egg: En pakke pølse koblinger: Og en tjenestepike } Disse representerer elementer av en funksjon som trengs for forberedelse heter: (bruk noen navn: Kan si Matlaging er navnet på min funksjon).

En Maid er en metode.

(Du må __call_ eller be denne metoden for å lage frokost) (Det å lage frokost er en funksjon som heter Cooking ) _

Egg og pølser er Parametere:

(Fordi antall egg og antall pølser du ønsker å spise er __variable_.) _

Din beslutning er et argument:

Det representerer __Value_ av det valgte antall egg og / eller pølser du lager mat ._

{ Mnemonic }

_ "Når du ringer piken og spørre henne om å lage frokost, hun __argues_ med deg om hvor mange egg og pølser du bør spise. Hun er bekymret for kolesterolet" __

(Argumenter, da, er verdiene for kombinasjonen av parametre du har erklært, og besluttet å gå til din Function)

Svarte 10/12/2017 kl. 12:23
kilden bruker

stemmer
0

Parametere er variablene i erklæringen av funksjon.

Argumenter er de faktiske verdiene av disse variablene som blir sendes til funksjonen.

Svarte 07/01/2018 kl. 07:06
kilden bruker

stemmer
1

Ifølge Josefs Alabahari bok "C # i et nøtteskall" (C # 7.0, s. 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
}

I noen menneskelige språk (AFAIK italiensk, russisk) synonymer er mye brukt til disse vilkårene.

  • parameter = formell parameter
  • Argumentet = virkelig parameter

I mitt universitet professorer bruke begge slags navn.

Svarte 18/01/2018 kl. 21:28
kilden bruker

stemmer
0

Det er forklart helt i Parameter (programmering) - Wikipedia

Løst, er en parameter A-type, og et argument er et eksempel.

I funksjonsdefinisjon f(x) = x*xden variable xer en parameter; i funksjonsoppropet f(2)verdien '' 2 er argumentet i funksjon.

Og Parameter - Wikipedia

I programmering , to begreper av parameteren blir ofte brukt, og er referert til som parametere og argumenter -eller mer formelt som en formell parameter og en virkelig parameter .

For eksempel, i definisjonen av en funksjon, f.eks

y = f(x) = x + 2,

x er den formelle parameter (den parameter ) av den definerte funksjon.

Når funksjonen beregnes for en gitt verdi, som i

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

er den virkelige parameter (det argument ) for evaluering av den definerte funksjon; det er en gitt verdi (er-verdi) som er substituert for formell parameter for den definerte funksjon. (I tilfeldig bruk av betingelsene parameter og argument utilsiktet kan byttes om, og derved brukt feil.)

Svarte 19/03/2018 kl. 11:18
kilden bruker

stemmer
-1

når du definerer en funksjon kan du ringe dem parametere eller formelle parametere når du ringer, de verdiene du passerer er argumenter

int add(int a,int b)       //  parameter
{
int x;
x=a+b;
return x;
}

void main()
{
int sum;
sum=add(10,20);// arguments
printf("%d",sum);
}
Svarte 13/04/2018 kl. 09:52
kilden bruker

stemmer
0

Du trenger å komme tilbake til basics.Both konstruktører og metoder har parametere og arguments.Many folk selv kaller konstruktører spesiell type methods.This er hvordan en metode er erklært parametre brukes :

      type name(parameters){
           //body of method
          }

Og dette er hvordan en konstruktør er erklært parametre brukes :

classname(parameters){
//body
}

Nå kan du se et eksempel koden ved hjelp som vi beregne volumet av en kube:

public class cuboid {
    double width;
    double height;
    double depth;

      cuboid(double w,double h,double d) { 
      //Here w,h and d are parameters of constructor
       this.width=w;
       this.height=h;
       this.depth=d;
       }

        public double volume() {
        double v;
        v=width*height*depth;
        return v;
        }
        public static void main(String args[]){
           cuboid c1=new cuboid(10,20,30);
           //Here 10,20 and 30 are arguments of a constructor
           double vol;
           vol=c1.volume();
           System.out.println("Volume is:"+vol);

           }
    }

Så nå forstår du at når vi kaller en konstruktør / metode på et objekt på et sted senere i koden vi passerer argumenter og ikke parameters.Hence parametre er begrenset til det stedet hvor den logiske objekt er definert, men argumentene spiller inn når en fysisk objektet blir opprettet.

Svarte 01/06/2018 kl. 07:39
kilden bruker

stemmer
1

Parameter er variabel i erklæringen av funksjon.

Argument er den faktiske verdien av denne variabelen som blir sendt for å fungere. skriv bildebeskrivelse her

Svarte 08/07/2018 kl. 11:52
kilden bruker

stemmer
2

Parameteren er en variabel i en funksjonsdefinisjon
Argumentet er en verdi av parameteren

<?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);

?>
Svarte 01/12/2018 kl. 04:50
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more