Questions marquées «type-inference»

L'inférence de type est le processus d'inférence automatique de types pour les programmes, à l'aide de règles définies par un système de types.

30
Utilisation du mot clé var en C #
Verrouillé . Cette question et ses réponses sont verrouillées car la question est hors sujet mais a une signification historique. Il n'accepte pas actuellement de nouvelles réponses ou interactions. Après discussion avec des collègues concernant l'utilisation du mot-clé 'var' en C # 3, je me demandais ce que les gens …
406 c#  type-inference  var 

3
Collections.emptyList () renvoie un List <Object>?
J'ai du mal à naviguer dans la règle de Java pour déduire des paramètres de type génériques. Considérez la classe suivante, qui a un paramètre de liste facultatif: import java.util.Collections; import java.util.List; public class Person { private String name; private List&lt;String&gt; nicknames; public Person(String name) { this(name,Collections.emptyList()); } public Person(String …




5
Comment passer un type de classe en tant que paramètre de fonction
J'ai une fonction générique qui appelle un service Web et sérialise la réponse JSON en un objet. class func invokeService&lt;T&gt;(service: String, withParams params: Dictionary&lt;String, String&gt;, returningClass: AnyClass, completionHandler handler: ((T) -&gt; ())) { /* Construct the URL, call the service and parse the response */ } Ce que j'essaie d'accomplir, …



8
Comment puis-je déterminer de manière fiable le type d'une variable déclarée à l'aide de var au moment du design?
Je travaille sur une installation de complétion (intellisense) pour C # dans emacs. L'idée est que, si un utilisateur tape un fragment, puis demande la complétion via une combinaison de touches particulière, la fonction de complétion utilisera la réflexion .NET pour déterminer les complétions possibles. Pour ce faire, il faut …

1
Appel de méthodes génériques statiques
J'ai rencontré une situation curieuse impliquant des méthodes génériques statiques. Voici le code: class Foo&lt;E&gt; { public static &lt;E&gt; Foo&lt;E&gt; createFoo() { // ... } } class Bar&lt;E&gt; { private Foo&lt;E&gt; member; public Bar() { member = Foo.createFoo(); } } Comment se fait-il que je n'ai pas à spécifier d'arguments …


4
Pourquoi le type de retour lambda n'est-il pas vérifié au moment de la compilation?
La référence de méthode utilisée a un type de retour Integer. Mais un incompatible Stringest autorisé dans l'exemple suivant. Comment corriger la withdéclaration de méthode pour sécuriser le type de référence de méthode sans transtyper manuellement? import java.util.function.Function; public class MinimalExample { static public class Builder&lt;T&gt; { final Class&lt;T&gt; clazz; …

6
Pourquoi Java ne peut-il pas déduire un supertype?
Nous savons tous que Long s'étend Number. Alors pourquoi cela ne compile-t-il pas? Et comment définir la méthode withpour que le programme compile sans aucune conversion manuelle? import java.util.function.Function; public class Builder&lt;T&gt; { static public interface MyInterface { Number getNumber(); Long getLong(); } public &lt;F extends Function&lt;T, R&gt;, R&gt; Builder&lt;T&gt; …

2
Pourquoi «std :: mem :: drop» n'est-il pas exactement le même que la fermeture | _ | () dans les limites de traits de rang supérieur?
L'implémentation de std::mem::dropest documentée comme suit: pub fn drop&lt;T&gt;(_x: T) { } En tant que tel, je m'attendrais à ce que la fermeture |_| ()(familièrement connue sous le nom de fermeture des toilettes ) soit un remplacement potentiel de 1: 1 dropdans les deux sens. Cependant, le code ci-dessous montre …


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.