---
title: "dynamiska parametrar"
type: "forum-thread"
url: "https://www.webforum.nu/amne/c-cpp/183503-dynamiska-parametrar"
topic: "C/C++"
topic_url: "https://www.webforum.nu/amne/c-cpp"
author: "noshornin"
published: "2010-05-15T18:48:09.000Z"
updated: "2010-05-18T09:28:31.000Z"
replies: 5
views: 913
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/c-cpp/183503-dynamiska-parametrar"
---

# dynamiska parametrar

## #1 — noshornin, 2010-05-15T18:48Z

Jag vet inte ens om det kallas så men det jag undrar är om det är möjligt att skriva en funktion med säg totalt 3 parametrar:

```
void enFunktion(int a, int b, int c)
{
//blabla
}
```

Och sen kalla på funktionen och bara ange 2 parametrar:

```
enFunktion(1,2);
```

alltså jag vill att parametern c inte ska behöva anges men ska kunna anges.
Någon som vet om det är möjligt och hur man då ska skriva.

Permalänk: https://www.webforum.nu/p/183503

## #2 — tydal, 2010-05-15T19:05Z

I C går det inte, men i C++ gör man så här:

void enFunktion(int a, int b, int c = 0)
{
  return;
}

Om du sedan anropar enFunktion(1, 2); så kommer c att få värdet 0.

Permalänk: https://www.webforum.nu/p/2234940

## #3 — noshornin, 2010-05-15T19:06Z

Tackar!

Permalänk: https://www.webforum.nu/p/2234941

## #4 — msossna, 2010-05-17T13:15Z

Det finns inget som hindrar att man gör en extrafunktion för att komma runt det hela i C

```
void enFunktion(int a, int b, int c)
{
   //blabla
}

void enFunktion(int a, int b)
{
   enFunktion(a, b, 0);
}
```

Permalänk: https://www.webforum.nu/p/2235009

## #5 — matlin, 2010-05-17T13:45Z

Överlagring av metoder kan man väl göra i alla OO språk, men inte många av dom stödjer "Optional parameters" som rent generellt anses vara "vackrare" kod än överlagring på metoder.

Men visst, det finns inget hinder att överlagra :)

Permalänk: https://www.webforum.nu/p/2235014

## #6 — spango, 2010-05-18T09:28Z

Ursäkta O/T, men:

> **[matlin skrev:](https://www.webforum.nu/p/1505096)**
>
> Överlagring av metoder kan man väl göra i alla OO språk

Nja, överlagring och OO har inget med varandra att göra, det är nog snarare kopplat till statisk typning (se t.ex. <http://corfield.org/entry/Overloading_is_not_OO>). Som exempel finns överlagring inte i vare sig Python, Ruby, Objective-C eller Smalltalk (de två sistnämnda har infixnotation av metodnamn vilket gör att man aldrig vill överlagra någonting igen).

Permalänk: https://www.webforum.nu/p/2235066

---

Tråden på webben: https://www.webforum.nu/amne/c-cpp/183503-dynamiska-parametrar
