Domanda

Ho fatto un programma che consentano una rappresentazione della conoscenza, la sua buona ma io cosa che potrebbe essere meglio se riesco a creare e distruggere le classi al volo.

È stato utile?

Soluzione

Se si sta parlando di generazione di codice dinamico, ecco un link:

in C # codice dinamico in caratteri

Altri suggerimenti

Dalla tua descrizione, sembra che non si vuole davvero creare classi C # in fase di esecuzione. Ciò che si vuole è una sorta di rappresentazione della conoscenza.

Non v'è alcuna risposta semplice a questo. Si tratta di un'area di ricerca sull'intelligenza artificiale. Vedere http://en.wikipedia.org/wiki/Knowledge_representation_and_reasoning per un'introduzione.

Per me suona come si vuole imparare un po ' AI la programmazione e la rappresentazione conoscenza . Tuttavia questo è molto diverso dal creare classi in fase di esecuzione. Wikipedia fornisce una buona introduzione piuttosto l'argomento, ma nessun codice a tutti.

http://en.wikipedia.org/wiki/Artificial_intelligence

In C # 3.0 è possibile creare tipi anonimi, anche se, come sottolinea STW, questo non è definito in fase di esecuzione, ma il tempo di compilazione.

var myClass = new { A = 5, Id = "MyClass", num = 0.187f};

Console.WriteLine(myClass.Id);

Se stai cercando di creare effettivamente un nuovo tipo di classe al volo, una rotonda modo è quello di generare file di classe C #, compilarli in un assieme, e utilizzare la reflection per caricare le classi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top