Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Klasser?????

Postades av 2002-11-26 14:53:17 - Cerrolyn Wedin, i forum c++, Tråden har 8 Kommentarer och lästs av 1083 personer

Hej!
Jag är en mycket grön nybörjare i C++.

Det är bl a en sak som jag inte förstå hur mycket jag än försöker: Vad är en klass, vad används den till, vad är det för skilnad mellan klass och funktion?

Vore mkt tacksam vid ett svar.

MVH
Cerrolyn Wedin


Svara

Sv: Klasser?????

Postades av 2002-11-26 15:03:01 - Pontus Wång

En klass består av metoder och egenskaper, klasser är ungefär som datatyper med mycket funktionalitet skulle man kunna säga.

Skillnaden enkel att beskriva genom att visa lite VB-kod:

<code>
'Skapa en instans av datatypen sträng
Dim s As String
'Skapa en instans av klassen ADODB.Recordset
Dim rs As New ADODB.Recordset

'Nu är s en sträng-variabel medan rs är ett objekt av typen ADODB.Recordset

's kan tilldelas strängar
s = "Schimpans"

'rs kan t.ex. användas till att hämta data från en XML-fil
'(genom ett nrop till metoden Open)
rs.Open "C:\MinXML.xml"

</code>


Svara

[LÖST]Sv: Klasser?????

Postades av 2002-11-26 15:10:16 - Cerrolyn Wedin

Så du menar att klasser i C++ är samma sak som datatyperner till variablerna är i VB?


Svara

Sv: Klasser?????

Postades av 2002-11-26 16:28:13 - Pontus Wång

Nä, jag menar att klasser är en behållare för kod som sedan kan användas på ett eller flera objekt.
Datatyper är inte klasser i VB, datatyper är inte heller klasser i C++, däremot är de datatyper som finns i .Net klasser. Skillnaden mellan en datatyp och en klass kan man förklara med att en datatyp är dum, den kan bara vara databärare och formatet på datat bestäms av typen. En klass är normalt sett lite intelligentare och har ofta måde funktioner och metoder för att manipulera informationen den innehåller.


Svara

Sv: Klasser?????

Postades av 2002-11-26 18:39:44 - Jörgen Lindroos

Klasser är den stora grunden i objektorienterade programspråk. VB, C++, Java och många flera språk är objektorienterade. Idag är de allra flesta språk objektorienterade. Åtminstone av de som används.

Så vad är ett objekt. Ett objekt är vad som helst, det finns nästan inga gränser. Människor, djur, datorer, tangentbord osv.
Ett objekt har så kallade metoder. Metoder är kommandon till objektet. Ta t.ex. objektet människa. Jag kan kommendera en människa att gå, springa, äta. Eller objektet dator. Jag kan kommendera en dator att skriva text på skärmen, eller skriva ut något på skrivaren.
Ett objekt har också egenskaper. En människa har egenskaper som egensinnig, pratglad osv. Egenskaper kan också vara objekt. En människa består av olika objekt, hon kan också äga olika objekt. En dators egenskaper kan vara t.ex. vilken färg den har, eller vilken prestanda. Den kan också ha en hårddisk, en skärm, en mus osv.

Rent programmeringsmässigt är ett objekt en instans av en klass. t.ex. Hunden är ett objekt av klassen Djur. När man skriver en klass bestämmer man hur objekt som är av den klassen ska bete sig

En VB-programmerare borde inte ha några problem med att förstå klasser.

/Jörgen


Svara

Sv: Klasser?????

Postades av 2002-11-26 23:15:47 - Jerker Pihl

man kan säga att en klass är en ritning.
Av ritningen skapas sedan objekt.
ritningen kan innehålla variabler och funktioner som kan påverka .
r


Svara

Sv: Klasser?????

Postades av 2002-11-27 14:05:16 - Jimmy Rimbro

kan jag få en förklaring som visar 2 enkla likadana program. ett med klasser, och ett som utför samma sak fast utan klasser, som visar vitsen med klasser.

*myror i huvet*


Svara

Sv: Klasser?????

Postades av 2002-11-27 18:42:18 - Thomas Tydal

> kan jag få en förklaring som visar 2 enkla likadana program. ett med klasser, och
> ett som utför samma sak fast utan klasser, som visar vitsen med klasser.

Lite förenklat kan man säga att en klass är datatyp som kan innehålla funktioner. Det finns ingenting funktionsmässigt som klasser tillför. Allt du kan göra med klasser kan du också göra utan. Enda skillnaden är hur källkoden ser ut. Meningen med klasser är att göra källkoden enklare att förstå, använda och bygga ut.

* * *

typedef struct date
{
  short y;
  char m;
  char d;
} datum;

unsigned short ymd2days(date datum)
{
}

/../

date datum1 = {2002, 12, 10};
date datum2 = {1998, 11, 11};
unsigned short antalDagar = ymd2days(datum1) - ymd2days(datum2);

/../

* * *

class date
{
public:
  datum(short year, char month, char day) { y = year; m = month; d = day; }
unsigned short ymd2days();
private:
  short y;
char m;
day m;
};

unsigned short date::ymd2days()
{
}

/../

date datum1 = date(2002, 12, 10);
date datum2 = date1998, 11, 11);
unsigned short antalDagar = datum1.ymd2days() - datum2.ymd2days());

/../


Svara

Sv: Klasser?????

Postades av 2002-11-28 00:23:54 - Niklas Jansson

> Det finns ingenting funktionsmässigt som klasser tillför.

Du kan inte få polymorfism utan klasser.

I övrigt beror det helt på om vi pratar om C eller C++. Pratar vi om C finns inga klasser, och pratar vi om C++ finns det i princip bara en sak som skiljer klasser från structar. structs har allting public som default, medan klasser har det private.

/Niklas Jansson


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 615
27 953
271 709
5 542
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies