One ring to rule them all, one ring to find them, one ring to bring them all, and in darkness bind them...
Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'
Klinkt wel interessant, moet ik eens gaan onderzoeken, tnxOp dinsdag 05 maart 2002 20:59 schreef Janoz het volgende:
Vooral waneer je dynamisch gealloceerde datastructuren gebruikt zijn pointers erg handig. Ik heb zelf echt leren werken met pointers (en dus ook de voordelen ervan ingezien) toen ik in pascal allemaal boom en lijst structuren moest implementeren.
One ring to rule them all, one ring to find them, one ring to bring them all, and in darkness bind them...
Verwijderd
Bij grote structs of structs die als object dienen.Op dinsdag 05 maart 2002 20:55 schreef cobratbq het volgende:
Zelf ben ik al een tijdje aan het programmeren in C en begin net in C++. Ik zit nog steeds met een raadsel: wanneer kun je pointers nu echt nuttig gebruiken?
(Ik heb de search al gebruikt)
1
2
3
4
5
6
| int main()
{
struct blaat dit;
doeietsmetstruct(&dit);
[..]
} |
Je wilt de data in struct houden, het is een object. Dus gebruik je een pointer. Dit wordt vooral handig als je met reusachtige object structs werkt zoals in glib.
Ook het overgeven van buffers (unsigned char
Verwijderd
Je kunt pointers overigens goed vergelijken met referenties in Java. Ik weet niet of dit jou iets zegt, maar ik vind het een handige manier van denken
Op woensdag 06 maart 2002 00:58 schreef HammerHD het volgende:
Je kunt pointers overigens goed vergelijken met referenties in Java. Ik weet niet of dit jou iets zegt, maar ik vind het een handige manier van denken.
One ring to rule them all, one ring to find them, one ring to bring them all, and in darkness bind them...
Tevens gebruik ik pointers altijd bij strings. Die standaard string class blaat gebruik ik nooit. Doe het altijd met een char*. Zoek maar es uit hoe strings werken in C dan kom je vanzelf bij pointers
"There are three stages in scientific discovery: first, people deny that it is true; then they deny that it is important; finally they credit the wrong person."
Verwijderd
In C++ maak je toch ook wel gebruik van referentiesOp woensdag 06 maart 2002 08:52 schreef cobratbq het volgende:
[..]
Sorry, het woord pointer klinkt me beter in de oren
Deze zijn overigens niet gelijk aan de referenties in Java!
Sorry, beetje off topic
Het ging over pointers niet over referenties.
Verwijderd
Volgens mij bedoel je hier objecten. Je maakt objecten in C++ dynamisch aan en niet een class. Je maakt een instantie van je class, je instantieerd dus een object dynamisch.Op woensdag 06 maart 2002 11:02 schreef drZymo het volgende:
Ik gebruik pointers vooral bij dynamisch gealloceerde classes en structs.
Verwijderd
Hier vind je een goede simpele tutorial over pointers in c(++)
De standaard case is sorteren. Dan moet je twee objecten verwisselen. Je hebt niets aan een kopie; je moet weten waar het ene object staat en dat overscrijven met het andere object.Op dinsdag 05 maart 2002 20:55 schreef cobratbq het volgende:
Zelf ben ik al een tijdje aan het programmeren in C en begin net in C++. Ik zit nog steeds met een raadsel: wanneer kun je pointers nu echt nuttig gebruiken?
Man hopes. Genius creates. Ralph Waldo Emerson
Never worry about theory as long as the machinery does what it's supposed to do. R. A. Heinlein
Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.
Verwijderd
Tuurlijk wel, met function objects.Op woensdag 06 maart 2002 15:19 schreef farlane het volgende:
Je kunt niet onder functiepointers uit als je bijvoorbeeld callbacks wilt maken.
You're right. Had ik vanmorgen gepost, had nog niet genoeg koffie opOp woensdag 06 maart 2002 11:49 schreef HammerHD het volgende:
[..]
Volgens mij bedoel je hier objecten. Je maakt objecten in C++ dynamisch aan en niet een class. Je maakt een instantie van je class, je instantieerd dus een object dynamisch.
"There are three stages in scientific discovery: first, people deny that it is true; then they deny that it is important; finally they credit the wrong person."
Voor het C gedeelte anyway....Op woensdag 06 maart 2002 15:22 schreef Sneechy het volgende:
Tuurlijk wel, met function objects.
Somniferous whisperings of scarlet fields. Sleep calling me and in my dreams i wander. My reality is abandoned (I traverse afar). Not a care if I never everwake.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| enum ems {
een = 1,
twee = 2,
drie = 3,
vier = 4,
vijf = 5,
zes = 6,
};
int enemys[6] = {
een,
twee,
drie,
vier,
vijf,
zes
};
char *enemy_names[6] = {
"Vijand een",
"Vijand twee",
"Vijand drie",
"Vijand vier",
"Vijand vijf",
"Vijand zes",
}; |
nu wil je bv een random vijand oproepen.
1
2
3
4
| int i;
i = rand() % 7;
printf("je komt nu deze vijand tegen: %s\n", enemys_names[i]); |
het is maar een stom voorbeeld maar je weet hopelijk een beetje wat ik bedoel
ps. deze code zal wel vol fouten zitten maar ik zit op school dus kank de code niet testen.