Pourquoi n'est-il pas possible de surcharger une fonction simplement en modifiant le type de retour? Cela changera-t-il dans une future version de Java? Au fait, juste pour référence, est-ce possible en C
Pourquoi n'est-il pas possible de surcharger une fonction simplement en modifiant le type de retour? Cela changera-t-il dans une future version de Java? Au fait, juste pour référence, est-ce possible en C
Python 2.x a deux façons de surcharger les opérateurs de comparaison, __cmp__ou les «opérateurs de comparaison riches» tels que __lt__. On dit que les surcharges de comparaison riches sont préférées, mais pourquoi en est-il ainsi? Les opérateurs de comparaison riches sont plus simples à implémenter...
Je suis tombé sur cette question dans un quiz, public class MoneyCalc { public void method(Object o) { System.out.println("Object Verion"); } public void method(String s) { System.out.println("String Version"); } public static void main(String args[]) { MoneyCalc question = new MoneyCalc();...
Je regardais la présentation d'Anders sur C # 4.0 et un aperçu de C # 5.0 , et cela m'a fait réfléchir à quand les paramètres facultatifs sont disponibles en C #, quelle sera la manière recommandée de déclarer des méthodes qui n'ont pas besoin de tous les paramètres spécifiés? Par exemple, quelque...
Je travaille avec JavaScript depuis quelques jours maintenant et je suis arrivé à un point où je veux surcharger les opérateurs pour mes objets définis. Après un passage sur Google à la recherche de cela, il semble que vous ne puissiez pas le faire officiellement, mais il y a quelques personnes...
Dans le code suivant, le premier appel à fooest ambigu et échoue par conséquent à compiler. Le second, avec l'ajout +avant le lambda, résout la surcharge du pointeur de fonction. #include <functional> void foo(std::function<void()> f) { f(); } void foo(void (*f)()) { f(); } int main ()...
Est-il possible d'avoir des fonctions surchargées en Python? En C #, je ferais quelque chose comme void myfunction (int first, string second) { //some code } void myfunction (int first, string second , float third) { //some different code } et ensuite, lorsque j'appelle la fonction, elle...
J'apprends la surcharge de fonctions en C ++ et je suis tombé sur ceci: void display(int a) { cout << "int" << endl; } void display(unsigned a) { cout << "unsigned" << endl; } int main() { int i = -2147483648; cout << i << endl; //will display -2147483648...
ah #include "logic.h" ... class A { friend ostream& operator<<(ostream&, A&); ... }; logic.cpp #include "a.h" ... ostream& logic::operator<<(ostream& os, A& a) { ... } ... Quand je compile, il dit: std :: ostream & logic :: operator << (std :: ostream...
Existe-t-il un moyen de remplacer une méthode non virtuelle? ou quelque chose qui donne des résultats similaires (autre que la création d'une nouvelle méthode pour appeler la méthode souhaitée)? Je voudrais remplacer une méthode de Microsoft.Xna.Framework.Graphics.GraphicsDeviceavec les tests...
Est-il possible de surcharger l' []opérateur deux fois? Pour permettre, quelque chose comme ceci: function[3][3](comme dans un tableau à deux dimensions). Si c'est possible, j'aimerais voir un exemple de code.
Je suis nouveau dans le monde de Javascript et je suis en train de bricoler avec l'écriture de fonctions très basiques et je suis tombé sur l'exemple ci-dessous par accident et je ne sais pas pourquoi cela fonctionne lorsque je ne passe pas un paramètre lorsque la fonction l'exige. Exemple de...
j'ai un foo.py def foo(): print "test" Dans IPython, j'utilise: In [6]: import foo In [7]: foo.foo() test Ensuite, j'ai changé le foo()en: def foo(): print "test changed" Dans IPython, le résultat de l'appel est toujours test: In [10]: import foo In [11]: foo.foo() test Ensuite, j'utilise: In...
Je change certaines de mes classes d'une utilisation extensive des getters et setters à une utilisation plus pythonique des propriétés. Mais maintenant je suis bloqué parce que certains de mes précédents getters ou setters appelleraient la méthode correspondante de la classe de base, puis...
L'un de mes animaux de compagnie déteste les langages dérivés du C (en tant que mathématicien) est que (-1) % 8 // comes out as -1, and not 7 fmodf(-1,8) // fails similarly Quelle est la meilleure solution? C ++ permet la possibilité de surcharger les modèles et les opérateurs, mais ces deux...
Je n'arrive pas à trouver le moyen de surcharger l'opérateur [] en javascript. Quelqu'un sait-il? Je pensais aux lignes de ... MyClass.operator.lookup(index) { return myArray[index]; } ou est-ce que je ne regarde pas les bonnes choses.
J'essaie de définir une fonction à l'aide de modèles et je veux que le nom de type soit int ou anEnum (une énumération spécifique que j'avais définie). J'ai essayé ce qui suit mais j'ai échoué: template <int | anEnum T> // or <int T, anEnum T> or <int, anEnum T> bool...
venant d'un arrière-plan principalement python, j'ai eu un peu de mal à travailler avec des types en C ++. J'essaie d'initialiser une variable de classe via l'un des constructeurs surchargés qui prennent différents types comme paramètres. J'ai lu que l'utilisation du automot - clé peut être...
Comment surcharger une simple fonction lambda locale? SSE du problème d'origine: #include <iostream> #include <map> void read() { static std::string line; std::getline(std::cin, line); auto translate = [](int idx) { constexpr static int table[8]{ 7,6,5,4,3,2,1,0 }; return table[idx]; };...
J'ai affaire à du code qui n'a pas été écrit par moi. J'ai cette déclaration: // p is type of std::unique_ptr<uint8_t[]> if (p < 0) { /* throw an exception */ } Alors qu'est-ce que cela p < 0signifie dans ce contexte? Sur la page de documentation , je pense que mon cas est 16) y <...