Articles of pointeurs de

Efficacité sur une plate-forme 64 bits: indexation vs pointeur 32 bits

Dans l’un de ses discours, Andrei Alexandrescu suggère que, sur une plate-forme 64 bits, l’utilisation de l’indexation 32 bits est plus rapide que l’utilisation d’un pointeur brut: Page 16: http://www.slideshare.net/andreialexandrescu1/three-optimization-tips-for-c-15708507 Sur son compte Facebook, il est plus précis et dit: “Préférer l’indexation des tableaux à des pointeurs (celui-ci semble s’inverser tous les dix ans).” J’ai […]

Comment atsortingbuer une adresse de pointeur manuellement dans le langage de programmation C?

Comment atsortingbuer une adresse de pointeur manuellement (par exemple à l’adresse de mémoire 0x28ff44 ) dans le langage de programmation C?

Le pointeur vers le type de classe incomplet n’est pas autorisé

Pour une raison quelconque, je ne peux pas utiliser les fonctions attachées à l’object que je veux utiliser. J’ai ajouté un commentaire à la ligne qui ne fonctionne pas. En tant qu’erreur, j’obtiens “Erreur; le pointeur vers le type de classe incomplet n’est pas autorisé” Ceci est le code dans dokter.ccp int counter = 0; […]

Pourquoi je ne déclare pas NSInteger avec un *

Je m’essaie au cours iPhone de Stanford sur iTunes U et je suis un peu confus au sujet des pointeurs. Dans la première tâche, j’ai essayé de faire quelque chose comme ça NSSsortingng *processName = [[NSProcessInfo processInfo] processName]; NSInteger *processID = [[NSProcessInfo processInfo] processIdentifier]; Ce qui a généré une erreur, après avoir contourné aveuglément, j’ai […]

C ++ fonction pointeur comme paramètre

J’essaie d’appeler une fonction qui passe en tant que pointeur de fonction sans argument, mais je ne peux pas le faire fonctionner. void *disconnectFunc; void D::setDisconnectFunc(void (*func)){ disconnectFunc = func; } void D::disconnected(){ *disconnectFunc; connected = false; }

Différences lors de l’utilisation de ** en C

J’ai commencé à apprendre le langage C récemment, et j’ai de la difficulté à comprendre la syntaxe du pointeur, par exemple lorsque j’écris la ligne suivante: int ** arr = NULL; Comment puis-je savoir si: arr est un pointeur sur un pointeur d’entier arr est un pointeur vers un tableau de pointeurs vers des entiers […]

Pourquoi NSError a-t-il besoin d’une double indirection? (pointeur sur un pointeur)

Ce concept semble me troubler. Pourquoi un object NSError a-t-il besoin que son pointeur soit transmis à une méthode modifiant l’object? Par exemple, ne pas passer une référence à l’erreur ne ferait-il pas la même chose? NSError *anError; [myObjc doStuff:withAnotherObj error:error]; et ensuite dans doStuff: – (void)doStuff:(id)withAnotherObjc error:(NSError *)error { // something went bad! [error […]

C ++ passe un tableau par référence

est-ce permis de passer un tableau par référence? void foo(double& *bar) Semble que mon compilateur dit non. Pourquoi? Quelle est la bonne façon de passer un tableau par référence? Ou un travail autour? J’ai un argument de tableau que ma méthode devrait modifier et que je devrais récupérer après. Sinon, je pourrais faire de ce […]

Est-ce que le pointeur de fonction ralentit le programme?

J’ai lu sur les pointeurs de fonctions en C. Et tout le monde a dit que cela ralentirait mon programme. Est-ce vrai? J’ai fait un programme pour le vérifier. Et j’ai obtenu les mêmes résultats dans les deux cas. (mesure le temps.) Alors, est-ce mauvais d’utiliser le pointeur de fonction? Merci d’avance. Pour répondre à […]

Quels sont les dangers potentiels lors de l’utilisation de boost :: shared_ptr?

De quelles façons pouvez-vous vous tirer dans le pied lorsque vous utilisez boost::shared_ptr ? En d’autres termes, quels sont les pièges à éviter lorsque j’utilise boost::shared_ptr ?