En Objective-C, vous ne pouvez pas déclarer de noms de méthode où le dernier composant ne prend pas d'argument. Par exemple, ce qui suit est illégal. -(void)take:(id)theMoney andRun; -(void)take:(id)yourMedicine andDontComplain; Pourquoi Objective-C a-t-il été conçu de cette façon? Était-ce juste un artefact de Smalltalk dont personne ne voyait le besoin …
Nous savons tous (ou devrions savoir) que Haskell est paresseux par défaut. Rien n'est évalué tant qu'il n'a pas été évalué. Alors, quand faut-il évaluer quelque chose? Il y a des points où Haskell doit être strict. J'appelle ces «points de rigueur», bien que ce terme particulier ne soit pas …
C'est quelque chose qui m'a toujours dérangé en tant que fonctionnalité des expressions lambda C ++: le type d'une expression lambda C ++ est unique et anonyme, je ne peux tout simplement pas l'écrire. Même si je crée deux lambdas dont la syntaxe est exactement la même, les types résultants …
Donc, je jouais avec Python en répondant à cette question , et j'ai découvert que ce n'est pas valide: o = object() o.attr = 'hello' en raison d'un AttributeError: 'object' object has no attribute 'attr'. Cependant, avec n'importe quelle classe héritée de object, elle est valide: class Sub(object): pass s …
Pourquoi C # permet blocs de code sans une déclaration précédente (par exemple if, else, for, while)? void Main() { { // any sense in this? Console.Write("foo"); } }
Question rapide: du point de vue de la conception, pourquoi est-ce que, en C ++, il n'y a pas de classe de base mère de tous, qu'est-ce qui est généralement objectdans d'autres langages?
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.