---
title: "konstruktoranrop till klasser"
type: "forum-thread"
url: "https://www.webforum.nu/amne/c-cpp/155839-konstruktoranrop-till-klasser"
topic: "C/C++"
topic_url: "https://www.webforum.nu/amne/c-cpp"
author: "onzo"
published: "2007-01-10T15:41:59.000Z"
updated: "2007-01-11T14:09:18.000Z"
replies: 6
views: 1025
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/155839-konstruktoranrop-till-klasser"
---

# konstruktoranrop till klasser

## #1 — onzo, 2007-01-10T15:41Z

Hej alla

Sitter och försöker lära mig lite C++ på egen hand genom att läsa en massa grejer jag har laddat ner i från nätet, lite olika kurser och så.

Har kört fast på en sak. Skall försöka förstå mig på det där med klasser och sitter med några uppgifter, en av dessa går ut på att man skall ha en default-konstruktor och en överlagrad med lämpliga argument. Hur man gör det tror jag att jag förstår. Men man skall också skapa en regel som beskriver hur och när dessa skall anropas. 

Det där med hur den regeln skall skapas har jag hängt upp mig på. Någon som kan ge mig en liten vink om hur jag skall fixa detta?

Vore tacksam i så fall.

Tackar på förhand.....

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

## #2 — Peter S, 2007-01-10T16:01Z

Hej!

Jag förstår inte riktigt vad som menas med "regel" i detta fall. En defaultkonstruktor kan skapas med parametrar, om du samtidigt ger dem defaultvärden

```
class c
{
  public:
    c(int i = 0, string s = "");
};

c d;
c e(1);
c f(1,"g");
```

Men det är ju även möjligt att ha flera konstruktorer:

```
class c
{
  public:
    c(); //default
    c(int i);
    c(string s);
    c(int i, string s);
    c(const c&); //copy constructor
};

c d; //default
c e(1); //c(int)
c f("g"); //c(string)
c g(1, "h"); //c(int, string)
c i(d); //copy
```

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

## #3 — onzo, 2007-01-10T16:21Z

Det är precis det jag undrar också... vad som menas med en regel och hur det skall göras.

Har bläddrat runt lite i en del böcker men inte hittat något. Funderar på om det kan vara så att man skall göra en if-then sats för att kolla om vissa saker uppfylls och i så fall anropas den överlagrade annars den defaulta....

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

## #4 — Peter S, 2007-01-10T16:57Z

Om det är meningen att användaren skall specificera värden, och att en instans av klassen skall skapas utifrån dessa värden, kanske if-satser behövs för att bestämma vilken konstruktor som skall anropas. Hur lyder uppgiften?

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

## #5 — onzo, 2007-01-11T00:51Z

Uppgiften består av två delar. I den första skall man skapa en klass som innehåller uppgifter om en person. Det har jag fixat.

Den andra uppgiften, den som jag har problem med lyder så här:

*"Lägg till en default-konstruktor och en överlagrad konstruktor med lämpliga argument. Formulera en regel som beskriver hur och när dessa anropas."*

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

## #6 — Peter S, 2007-01-11T10:17Z

Jag tolkar det som att du i text skall beskriva vilken av konstruktorerna som anropas, givet en mängd av parametrar.

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

## #7 — onzo, 2007-01-11T14:09Z

Mmmm... Det är mycket möjligt att det är så faktiskt.

I alla fall, jag lägger ner den deluppgiften. Det där med konstruktorbiten fattar jag och det är ju det viktigaste.

Tack!!

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

---

Tråden på webben: https://www.webforum.nu/amne/c-cpp/155839-konstruktoranrop-till-klasser
