Vorrei creare una funzione che restituisca un object conforms a un protocollo, ma il protocollo utilizza typealias . Dato il seguente esempio di giocattolo: protocol HasAwesomeness { typealias ReturnType func hasAwesomeness() -> ReturnType } extension String: HasAwesomeness { func hasAwesomeness() -> String { return “Sure Does!” } } extension Int: HasAwesomeness { func hasAwesomeness() -> […]
Mentre capisco alcuni dei casi limite dei generici, mi manca qualcosa con il seguente esempio. Ho la seguente class 1 public class Test { 2 public static void main(String[] args) { 3 Test t = new Test(); 4 List<Test> l =Collections.singletonList(t); 5 } 6 } La riga 4 mi dà l’errore Type mismatch: cannot convert […]
Voglio convertire List in List . Uno dei metodi esistenti sta restituendo List e voglio convertirlo in List . Esiste un modo diretto in Java oltre a iterare e convertire elemento per elemento?
Voglio creare un DataGrid generico da utilizzare su tutti i miei Views / UserControls. Questa è la mia struttura: Class Library chiamata “Core” : Class chiamata “ViewBase” : public class ViewBase : UserControl { public ViewBase() { } //Rest of Methods and Properties } Class Library chiamata “Controls” : UserControl chiamato “GridView” : XAML: Codice […]
Supponi di avere una class Employee base in quanto tale: class Employee { public string Name; public int Years; public string Department; } Quindi (in una class separata) ho i seguenti frammenti di codice (penso di aver capito tutto tranne l’ultimo): Credo che il seguente frammento di codice funzioni perché l’array initiliser crea una matrice […]
Ho un’interfaccia di tipo generico e voglio un costruttore di un object per prendere l’interfaccia generica. Piace: public Constructor(int blah, IGenericType instance) {} Voglio il codice che crea questo object per specificare IGenericType (usa Inversion of Control). Non ho visto un modo per questo per accadere. Qualche suggerimento per realizzare questo? Voglio che qualcuno crei […]
Questo mi ha fatto impazzire, quindi ho pensato di chiederlo qui nella speranza che un guru del C # me lo spiegasse. Perché questo codice genera un errore? class Program { static void Main(string[] args) { Foo(X); // the error is on this line } static String X() { return “Test”; } static void Foo(Func<IEnumerable> […]
esempio: import scala.actors._ import Actor._ class BalanceActor[T <: Actor] extends Actor { val workers: Int = 10 private lazy val actors = new Array[T](workers) override def start() = { for (i <- 0 to (workers – 1)) { // error below: classtype required but T found actors(i) = new T actors(i).start } super.start() } // […]
Uso sempre un’interfaccia comparabile per fornire ordini naturali per la mia class attraverso collection.sort. Fondamentalmente se ho una class di persone, la otterrò per implementare l’interfaccia Comparable e fornirò l’implementazione di compareTo. Tuttavia, nella definizione di Collections.sort in javadocs, vedo questa firma public static <T extends Comparable> void sort(List list) Non capisco assolutamente questa definizione […]
Alex Stepanov ha definito i tipi regolari come tipi che soddisfano certe proprietà relative alla copia e all’uguaglianza. Ora che C ++ 11 ha aggiunto la semantica di movimento al regno della programmazione generica, la definizione di Stepanov non è più completa. Sto cercando un buon riferimento sui tipi regolari che include la loro interazione […]