Visa fullständig version : "class" i c++
Windstalker
2007-01-02, 21:28
Är det någon som kan förklara det här med "class" i c++. Länkar fungerar, men att förklara det med egna ord är ännu bättre. Ju utförligare desto bättre! *drool*
Tack på förhand
/Wind
HerrArne
2007-01-02, 21:40
Vad har du för grund att stå på? Några kunskaper om objektorienterad programmering? Övriga programmeringskunskaper?
Meridian
2007-01-02, 21:44
Rent konkret är en klass en samling relaterade funktioner och variabler. En klass definierar en typ av objekt (t ex en bil). Ett objekt har egenskaper (funktioner, t ex starta motorn, sväng, stanna etc...) och olika attribut (variabler, t ex hästkrafter, längd, modell osv...).
Mer info: http://en.wikipedia.org/wiki/Class_%28computer_science%29
Edit: stavfel...
Windstalker
2007-01-02, 22:02
Vad har du för grund att stå på? Några kunskaper om objektorienterad programmering? Övriga programmeringskunskaper?
Har läst C i ca 1,5 termin och c++ i 1 termin. Har väl kanske inte några rejäla grunder, men lite kan jag.
/Wind
Windstalker
2007-01-02, 22:11
Rent konkret är en klass en samling relaterade funktioner och variabler. En klass definierar en typ av objekt (t ex en bil). Ett objekt har egenskaper (funktioner, t ex starta motorn, sväng, stanna etc...) och olika attribut (variabler, t ex hästkrafter, längd, modell osv...).
Mer info: http://en.wikipedia.org/wiki/Class_%28computer_science%29
Edit: stavfel...
Okej, så klass är typ som float, int, char osv ? Egenskaperna är vad den gör, exempel int som bara skriver ut heltal? attribut är vad man döper den till? exempel int tal1?
Eller är jag helt bakom flötet? :p
/Wind
Okej, så klass är typ som float, int, char osv ? Egenskaperna är vad den gör, exempel int som bara skriver ut heltal? attribut är vad man döper den till? exempel int tal1?
Eller är jag helt bakom flötet? :p
/Wind
Förvisso är int, float etc klasser, men de GÖR just inget annat än lagrar värden på ett mycket specifikt sätt samt överlagrar aritmetik-operatorerna så att du t ex kan addera två int:ar. "Skriver ut" gör du t ex med <<-operatorn på cout.
Ärligt talat undrar jag vad du gjort i 2.5 terminer om du inte kommit längre. Har du struntat i allt?
class i C++ är med 2 undantag indentiskt med struct i C. Det som skiljer är att class har runtime type information (vilket förvisso kan ändras) samt att default-access i struct är public; i class är det private (eller protected? C++-kunskaperna är något rostiga).
I C har du exempelvis FILE-pekaren för att jobba med filer. Du har funktionerna fopen, fprintf, fclose etc. Du jobbar med dem genom att hela tiden ge FILE-pekaren som första argument, helt enkelt för att indikera just VILKET objekt du jobbar på. I C++-världen gör du istället så att du anropar funktionen PÅ objektet.
C:
fprintf(the_file, "foo%d", 10);
C++:
the_file->printf("foo%d", 10);
Nu finns inte just printf() på det viset, men för att ge dig något att relatera till så är det det näst mest grundläggande i objekt-orienterad programmering.
Class är just mallen/typen/strukturen/beskrivningen av ett eller flera objekt/instanser/saker/manicker som är av samma slag/sort. (Många synonymer för att ge dig fler ledtrådar att hänga upp informationen på).
Meridians post och länk förklarade det så bra som det går utan att skriva en bok i ämnet. :)
Turrican
2007-01-03, 23:20
Har läst C i ca 1,5 termin och c++ i 1 termin. Har väl kanske inte några rejäla grunder, men lite kan jag.
/Wind
wtf? Vad en klass är måste väl vara det absolut mest grundläggande, och det absolut första man lär sig om man läser C++, det är riktigt illa att du ställer en sån fråga efter så lång tids pluggande i ämnet. Programmering kanske inte är rätt ämne för dig? ;)
vBulletin® v3.8.8, Copyright ©2000-2026, Jelsoft Enterprises Ltd.