Zablokowana . To pytanie i odpowiedzi są zablokowane, ponieważ pytanie jest nie na temat, ale ma znaczenie historyczne. Obecnie nie akceptuje nowych odpowiedzi ani interakcji. Po dyskusji z kolegami na temat użycia słowa kluczowego „var” w C # 3 zastanawiałem się, jakie są opinie ludzi na temat właściwego zastosowania wnioskowania …
Mam problem z nawigacją w regule Javy w celu wnioskowania o ogólnych parametrach typu. Rozważ następującą klasę, która ma opcjonalny parametr listy: 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) { this.name = name; …
Mam tablicę, która składa się z AnyObject. Chcę iterować i znaleźć wszystkie elementy, które są instancjami tablicowymi. Jak mogę sprawdzić, czy obiekt jest danego typu w Swift?
Używam nowego autosłowa kluczowego dostępnego w standardzie C ++ 11 do skomplikowanych typów szablonów, do czego, moim zdaniem, został zaprojektowany. Ale używam go również do takich rzeczy jak: auto foo = std::make_shared<Foo>(); I bardziej sceptycznie dla: auto foo = bla(); // where bla() return a shared_ptr<Foo> Nie widziałem wiele dyskusji …
Używam Xcode 6 Beta 6. To jest coś, co mnie denerwuje od jakiegoś czasu, ale osiąga punkt, w którym jest ledwo użyteczny. Mój projekt zaczyna mieć przyzwoity rozmiar 65 plików Swift i kilka zmostkowanych plików Objective-C (które tak naprawdę nie są przyczyną problemu). Wygląda na to, że jakakolwiek niewielka modyfikacja …
Mam ogólną funkcję, która wywołuje usługę internetową i serializuje odpowiedź JSON z powrotem do obiektu. 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 */ } To, co próbuję osiągnąć, jest odpowiednikiem …
Wygląda na to, że autobyła to dość istotna funkcja do dodania w C ++ 11, która wydaje się być zgodna z wieloma nowszymi językami. Podobnie jak w przypadku języka takiego jak Python, nie widziałem żadnej jawnej deklaracji zmiennej (nie jestem pewien, czy jest to możliwe przy użyciu standardów Pythona). Czy …
Zgodnie ze specyfikacją języka Scala : ... wnioskowanie o typie lokalnym jest dozwolone w celu ograniczenia złożoności wywnioskowanych granic [parametrów typu]. Minimalność i maksymalność typów należy rozumieć w odniesieniu do zbioru typów o dopuszczalnej złożoności. W praktyce jakie są ograniczenia? Ponadto, czy istnieją inne ograniczenia, które mają zastosowanie do wywnioskowanych …
Pracuję nad narzędziem uzupełniania (Intellisense) dla języka C # w emacsie. Chodzi o to, że jeśli użytkownik wpisze fragment, a następnie poprosi o uzupełnienie za pomocą określonej kombinacji naciśnięć klawiszy, narzędzie uzupełniania użyje odbicia .NET do określenia możliwych uzupełnień. Aby to zrobić, trzeba znać rodzaj realizowanej rzeczy. Jeśli jest to …
Natknąłem się na ciekawą sytuację związaną ze statycznymi metodami ogólnymi. To jest kod: class Foo<E> { public static <E> Foo<E> createFoo() { // ... } } class Bar<E> { private Foo<E> member; public Bar() { member = Foo.createFoo(); } } Dlaczego nie muszę określać żadnych argumentów typu w wyrażeniu Foo.createFoo()? …
Widzę tutaj kilka interesujących dyskusji na temat pisania statycznego i dynamicznego. Generalnie wolę wpisywanie statyczne, ze względu na sprawdzanie typów kompilacji, lepiej udokumentowany kod itp. Zgadzam się jednak, że zaśmiecają one kod, jeśli są robione tak, jak robi to na przykład Java. Więc zaraz zacznę budować własny funkcjonalny język stylów, …
Pisząc kod dla innej odpowiedzi na tej stronie, natknąłem się na tę osobliwość: 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; } static <T …
Gdy próbuję znaleźć RecycleViewidentyfikator według identyfikatora, pojawia się następujący błąd . Błąd: - wnioskowanie o typie nie powiodło się: za mało informacji, aby wywnioskować parametr T Kod: class FirstRecycleViewExample : AppCompatActivity() { val data = arrayListOf<String>() override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.first_recycleview) val recycler_view = findViewById(R.id.recycler_view) as RecyclerView ///IN …
Użyte odwołanie do metody ma typ zwracany Integer. Jednak niezgodność Stringjest dozwolona w poniższym przykładzie. Jak naprawić withdeklarację metody, aby uzyskać bezpieczny typ referencyjny metody bez ręcznego rzutowania? import java.util.function.Function; public class MinimalExample { static public class Builder<T> { final Class<T> clazz; Builder(Class<T> clazz) { this.clazz = clazz; } static …
Wszyscy wiemy, że Long rozciąga się Number. Dlaczego więc się nie kompiluje? Jak zdefiniować metodę, withaby program kompilował się bez ręcznego rzutowania? import java.util.function.Function; public class Builder<T> { static public interface MyInterface { Number getNumber(); Long getLong(); } public <F extends Function<T, R>, R> Builder<T> with(F getter, R returnValue) { …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.