Bloccato . Questa domanda e le sue risposte sono bloccate perché la domanda è fuori tema ma ha un significato storico. Al momento non accetta nuove risposte o interazioni. Dopo una discussione con i colleghi sull'uso della parola chiave "var" in C # 3, mi chiedevo quali fossero le opinioni …
Sto riscontrando problemi nella navigazione della regola di Java per inferire i parametri di tipo generico. Considera la seguente classe, che ha un parametro elenco opzionale: import java.util.Collections; import java.util.List; public class Person { private String name; private List<String> nicknames; public Person(String name) { this(name,Collections.emptyList()); } public Person(String name,List<String> nicknames) …
Ho un array composto da AnyObject. Voglio iterare su di esso e trovare tutti gli elementi che sono istanze di array. Come posso verificare se un oggetto è di un determinato tipo in Swift?
Sto usando la nuova autoparola chiave disponibile nello standard C ++ 11 per i tipi complicati di modelli, che è ciò per cui credo sia stato progettato. Ma lo sto usando anche per cose come: auto foo = std::make_shared<Foo>(); E più scettico per: auto foo = bla(); // where bla() …
Sto usando Xcode 6 Beta 6. Questo è qualcosa che mi infastidisce da un po 'di tempo ormai, ma sta raggiungendo un punto in cui è appena utilizzabile ora. Il mio progetto sta iniziando ad avere una dimensione decente di 65 file Swift e alcuni file Objective-C con bridge (che …
Ho una funzione generica che chiama un servizio Web e serializza la risposta JSON su un oggetto. class func invokeService<T>(service: String, withParams params: Dictionary<String, String>, returningClass: AnyClass, completionHandler handler: ((T) -> ())) { /* Construct the URL, call the service and parse the response */ } Quello che sto cercando …
Sembra che sia autostata aggiunta una caratteristica abbastanza significativa in C ++ 11 che sembra seguire molti dei linguaggi più recenti. Come in un linguaggio come Python, non ho visto alcuna dichiarazione esplicita di variabili (non sono sicuro che sia possibile utilizzare gli standard Python). C'è un inconveniente nell'usare autoper …
Secondo la Scala Language Spec : ... l'inferenza di tipo locale è consentita per limitare la complessità dei limiti dedotti [dei parametri di tipo]. La minimalità e la massimalità dei tipi devono essere comprese rispetto all'insieme dei tipi di complessità accettabile. In pratica quali sono i limiti? Inoltre, esistono limiti …
Sto lavorando a una struttura di completamento (intellisense) per C # in emacs. L'idea è che, se un utente digita un frammento, quindi richiede il completamento tramite una particolare combinazione di tasti, la funzione di completamento utilizzerà la riflessione .NET per determinare i possibili completamenti. Per fare questo è necessario …
Mi sono imbattuto in una situazione curiosa che coinvolge metodi generici statici. Questo è il codice: class Foo<E> { public static <E> Foo<E> createFoo() { // ... } } class Bar<E> { private Foo<E> member; public Bar() { member = Foo.createFoo(); } } Come mai non devo specificare alcun tipo …
Vedo qui alcune discussioni interessanti sulla digitazione statica e dinamica. In genere preferisco la digitazione statica, a causa del controllo del tipo di compilazione, del codice meglio documentato, ecc. Tuttavia, sono d'accordo che ingombrano il codice se fatto nel modo in cui lo fa Java, per esempio. Quindi sto per …
Mentre scrivevo il codice per un'altra risposta su questo sito mi sono imbattuto in questa particolarità: static void testSneaky() { final Exception e = new Exception(); sneakyThrow(e); //no problems here nonSneakyThrow(e); //ERRROR: Unhandled exception: java.lang.Exception } @SuppressWarnings("unchecked") static <T extends Throwable> void sneakyThrow(Throwable t) throws T { throw (T) t; …
Il riferimento al metodo utilizzato ha il tipo restituito Integer. Ma un incompatibile Stringè consentito nel seguente esempio. Come risolvere la withdichiarazione del metodo per rendere sicuro il tipo di riferimento del metodo senza eseguire il cast manualmente? import java.util.function.Function; public class MinimalExample { static public class Builder<T> { final …
Sappiamo tutti che Long si estende Number. Quindi perché questo non si compila? E come definire il metodo in withmodo che il programma venga compilato senza alcun cast manuale? import java.util.function.Function; public class Builder<T> { static public interface MyInterface { Number getNumber(); Long getLong(); } public <F extends Function<T, R>, …
L'implementazione di std::mem::dropè documentata come la seguente: pub fn drop<T>(_x: T) { } In quanto tale, mi aspetterei che la chiusura |_| ()(colloquialmente nota come chiusura del gabinetto ) sia un potenziale sostituto 1: 1 dropin entrambe le direzioni. Tuttavia, il codice seguente mostra che dropnon è compatibile con un …
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.