Articles of macros

Que fait la macro Q_D dans Qt

Q_D code source de Qt et je suis tombé sur cette macro Q_D . Quelqu’un pourrait-il expliquer ce qu’il fait? Presque tout le temps, il devrait retourner un widget du type donné en paramètre qui est la variable d . Besoin de plus de précisions à ce sujet.

Installer Docker Toolbox sur un Mac via la ligne de commande

J’essaie d’automatiser la configuration d’un environnement de développeur sur Mac. Une partie de cette installation consiste à installer la boîte à outils Docker . Je ne trouve aucune documentation sur la façon de procéder via la ligne de commande. Comment puis-je automatiser cette installation (doit être déclenché via la ligne de commande)? Mise à jour: […]

Mmh, qui êtes-vous PRIu64?

Je suis nouveau à C et je suis confronté à: #include #include int main(void) { uint64_t foo = 10; printf(“foo is equal to %” PRIu64 “!\n”, foo); return 0; } Et il fonctionne! Je ne comprends pas pourquoi? Quelqu’un peut-il m’aider à ce sujet? Merci beaucoup! Torr

Jusqu’où peuvent aller les macros LISP?

J’ai beaucoup lu que LISP peut redéfinir la syntaxe à la volée, probablement avec des macros. Je suis curieux de savoir jusqu’où cela va réellement? Pouvez-vous redéfinir la structure de la langue à un point tel qu’elle devient un compilateur pour une autre langue? Par exemple, pourriez-vous changer la nature fonctionnelle de LISP en une […]

Peut-on avoir des macros récursives?

Je veux savoir si nous pouvons avoir des macros récursives en C / C ++? Si oui, veuillez fournir un exemple d’exemple. Deuxième chose: pourquoi ne puis-je pas exécuter le code ci-dessous? Quelle est l’erreur que je fais? Est-ce à cause de macros récursives? # define pr(n) ((n==1)? 1 : pr(n-1)) void main () { […]

Evaluation paresseuse vs Macros

Je suis habitué à l’évaluation paresseuse de Haskell, et je me trouve irrité par les langues par défaut maintenant que j’ai utilisé l’évaluation paresseuse correctement. Ceci est en fait très dommageable, car les autres langages que j’utilise font surtout des évaluations paresseuses très compliquées, impliquant normalement le déploiement d’iterators personnalisés, etc. Donc, en acquérant des […]

Tant de parenthèses dans les en-têtes standard gcc

Pourquoi les expressions constantes dans les fichiers d’en-tête GCC sont-elles entourées de parenthèses, comme ceci? #define INTMAX_MIN (-9223372036854775807LL) #define INTMAX_MAX (9223372036854775807LL) Quelle serait la différence si je omettais les parenthèses, de cette façon? #define INTMAX_MIN -9223372036854775807LL #define INTMAX_MAX 9223372036854775807LL Et pourquoi y a-t-il le suffixe “L”? Serait-ce le même si j’écris ce qui suit? #define […]

Comment puis-je afficher le chemin actuel de la succursale et du dossier dans le terminal?

J’ai regardé certaines vidéos de Team Treehouse et ils ont un terminal très agréable quand ils travaillent avec Git. Par exemple, ils ont (quelque chose de similaire): mike@treehouseMac: [/Work/test – feature-branch-name] $ git add . mike@treehouseMac: [/Work/test – feature-branch-name] $ git commit -m “Some feature.” mike@treehouseMac: [/Work/test – feature-branch-name] $ git checkout master mike@treehouseMac: [/Work/test […]

Puis-je avoir des macros dans les fichiers source Java

Dans mon programme, je lis plusieurs fois les entiers sous forme de console. Chaque fois, je dois taper cette ligne. new Scanner(System.in).nextInt(); Je suis habitué à C / C ++ et je me demande si je peux définir quelque chose comme #define READINT Scanner(System.in).nextInt(); et puis, à chaque endroit de mon programme java, je peux […]

Macro de taille de tableau qui rejette les pointeurs

La macro de taille de tableau standard qui est souvent enseignée est #define ARRAYSIZE(arr) (sizeof(arr) / sizeof(arr[0])) ou une formation équivalente. Cependant, ce genre de chose réussit silencieusement quand un pointeur est passé et donne des résultats qui peuvent sembler plausibles à l’exécution jusqu’à ce que les choses tombent mystérieusement en morceaux. Il est trop […]