Forum huvudsida -> Programmering -> Egen int
Sidor: 1
Dojjan | 13:57 - 14:e Augusti 2005 | Post #1 | |
Medlem Inlägg: 114 Skicka PM |
Funderar på hur man gör en egen int, som tex en 64 bitars eller enbart en 16 bitars. Det jag vill veta är grundprinsipen eftersom man här inte (antar jag) baserar klassen på andra klasser. Så frågan: Hur gör man helt enkelt? |
Celeron | 17:14 - 14:e Augusti 2005 | Post #2 | |
Medlem Inlägg: 418 Skicka PM |
Varför? Jag vet inte om det går att göra, för någon/några variabel/varibler måste du ju ha. ------------------------- Det viktigaste är att ha roligt! Har ny hemsida: http://www.freewebs.com/cpperik/ |
FunkyChicken | 21:04 - 14:e Augusti 2005 | Post #3 | |
Nyhetsredaktör Inlägg: 800 Skicka PM |
int är inte en klass, utan en datatyp. Väl? I cpp iaf? |
Dojjan | 21:07 - 14:e Augusti 2005 | Post #4 | |
Medlem Inlägg: 114 Skicka PM |
Du måste ju kunna utveckla en egen, eller hur? Annars vore det en enorm begränsning. |
FunkyChicken | 21:12 - 14:e Augusti 2005 | Post #5 | |
Nyhetsredaktör Inlägg: 800 Skicka PM |
egna datatyper tror jag inte att man kan göra. man kan förstås härma dem genom att göra en klass som håller reda på en bytearray eller ett register eller nåt, eller göra en struct med bara en int i, men det känns ju lite meningslöst... |
Dojjan | 21:30 - 14:e Augusti 2005 | Post #6 | |
Medlem Inlägg: 114 Skicka PM |
Klart man kan - hur gjorde annars snubbarna på microsoft int:en från början? |
Independence | 22:18 - 14:e Augusti 2005 | Post #7 | |
Administratör Inlägg: 1800 Skicka PM |
"hur gjorde annars snubbarna på microsoft int:en från början?" Vilken motbjudande mening, nästan så jag har lust att låsa tråden eller så. Eek. Hursomhelst så är det väl så att datatyperna är definerade inte i STL utan i själva språket och således måste man nog ändra i koden till kompilatorn om man vill göra en egen datatyp. Någon anledning att göra en egen datatyp finns nog dock inte tyvärr. 8, 16 och 32-bitars int finns ju redan, och säkert många andra. I andra fall kan man ju använda någon annan variabeltyp och fulhacka lite. ------------------------- Vi är riddarna som säger fiskbulle! |
Lajnold | 02:20 - 15:e Augusti 2005 | Post #8 | |
Medlem Inlägg: 65 Skicka PM |
Ta mitt inlägg med en nypa salt. Jag är inte säker på att det jag skriver stämmer helt. De inbyggda datatyperna är sånt som det finns stöd för direkt i processorn (har med storleken på registrena att göra). Det är också möjligt att skapa egna klasser som uppför sig som de inbyggda datatyperna. Exempel på sådana är NTL och GMP. En fördel med det är att man då kan skapa variabler som rymmer större tal och/eller har större precision på flyttal. Ska man skapa någon sådan klass så får man nog göra ungefär som FunkyChicken skrev. ------------------------- Ingen signatur! |
Celeron | 08:03 - 15:e Augusti 2005 | Post #9 | |
Medlem Inlägg: 418 Skicka PM |
Man kan göra egna datatyper med enum, men det är ganska meningslöst eftersom det bara ger en typ som har ett antal konstanter. Man skulle kunna göra en klass som kan ta hand om stora tal, men du måste ju ändå använda int eller andra variabler. ------------------------- Det viktigaste är att ha roligt! Har ny hemsida: http://www.freewebs.com/cpperik/ |
Tynnhammar | 08:41 - 16:e Augusti 2005 | Post #10 | |
Medlem Inlägg: 18 Skicka PM |
Finns ju ett antal utomstående bibliotek, om du vill ha stora siffror, kolla t ex in http://shoup.net/ntl/ ------------------------- http://www.tynnhammar.com |
void | 09:49 - 16:e Augusti 2005 | Post #11 | |
Medlem Inlägg: 63 Skicka PM |
Eftersom C/C++ är ett maskinnära språk har du vissa primitiver att arbeta med... dessa är de vanliga char/int/float etc. Maskinvaran stödjer dessa i operationer, eller så kan kompilatorn enkelt översätta mellan dem och primitiver som går att använde på just den instruktionen som ska utföras. Detta är egentligen en begränsing maskinvaran sätter, och som de flesta maskinnära kompilerade språk har. Här kommer objekt och klasser in, du kan nämligen med hjälp av dessa (och operatoröverlagring och annat skojs =) skapa datatyper som i stort liknar de primitiva typerna, klarar samma operationer (+, -, / etc.). ------------------------- Ingen signatur! |
Dojjan | 23:12 - 16:e Augusti 2005 | Post #12 | |
Medlem Inlägg: 114 Skicka PM |
ok... |
helmutt | 08:15 - 17:e Augusti 2005 | Post #13 | |
Medlem Inlägg: 1 Skicka PM |
Om det du är ute efter är att använda en specifik och portabel int typ (en som alltid är 16 bitar t.ex.) så kan du använda inttypes.h i C... Jag kan inte C++ så där vet jag inte. ------------------------- Ingen signatur! |
Celeron | 09:07 - 17:e Augusti 2005 | Post #14 | |
Medlem Inlägg: 418 Skicka PM |
Allt som är C är också C++. Möjligt att den filen har gjorts om till cinttypes i C++ (man har gjort så med andra headerfiler från C). ------------------------- Det viktigaste är att ha roligt! Har ny hemsida: http://www.freewebs.com/cpperik/ |
Sidor: 1
Forum huvudsida -> Programmering -> Egen int
Du får inte posta i den här tråden | Till toppen
Datum
2025-01-02 16:40
Vecka: 01
Besökare
Inloggade: 0
Gäster: 605
Medlemmar
Medlemmar: 53576
Forum
Senaste inlägget: HAHA MÄNNISKAN LEVER ÄN (13:45 - 18:e Januari 2019, av Hetzz)
Wiki
Senaste ändringen:
3D (rev: 1, tid: 09:40 - 13:e November 2015)
Chatt
#blinkenlights @ Libera.Chat
Gratis shellkonton för IRC, webbsidor mm.