Tag: metaprogramming

Metaprogramming ist die Fähigkeit, zu Programmieren und diejenigen, die Programmierumgebung, als mit Makros oder Metaklassen.

Dynamisch erzeugen-Eigenschaft getter - /setter-durch Reflexion oder ähnliches

Anzahl der Antworten 6 Antworten
Stellen Sie sich die folgende Klasse: public class Settings { [FileBackedProperty("foo.txt")] public string Foo { get; set; } } Ich würde gerne in der Lage sein, etwas zu schreiben, ähnlich wie die oben genannten und haben settings.Foo

Python import string Python-code als Modul

Anzahl der Antworten 4 Antworten
In python können Sie etwas tun, wie das importieren eines Moduls über ein string mit dem Namen, und weisen Sie die namespace-variable, die auf den lokalen namespace. x = __import__(str) Ich mich Fragen, ob es eine entsprechende

Die Definition der Klasse Methoden Dynamisch in Ruby

Anzahl der Antworten 2 Antworten
In Ruby 1.9.3 ich erstellen müssen Sie ein paar Klasse-Instanzen, die jeweils ähnliche Instanz - und Klassen-Methoden aber, die unterscheiden sich nur durch ein paar Feste Parameter. Die Unterscheidung Ihrer Klasse-Typ ist auch wichtig, damit ich nicht

Wie dynamisch erstellen von Modul-level-Funktionen von Methoden in einer Klasse

Anzahl der Antworten 2 Antworten
Ich versuche, dynamisch erstellen von Modul-level-Funktionen von Methoden in einer Klasse. Also für jede Methode in einer Klasse, ich will eine Funktion erstellen mit dem gleichen Namen, die erstellt eine Instanz der Klasse und ruft dann die

Warum bekomme ich eine "falsche Anzahl von Argumenten (0 2)" Ausnahme in meinem Ruby-Code?

Anzahl der Antworten 2 Antworten
Ich versuche mich zu bessern meine Ruby durch erneutes schreiben von Kent Beck ' s xUnit-Python-Beispiel von "Test Driven Development: By Example". Ich habe ziemlich weit, aber jetzt bekomme ich die folgende Fehlermeldung, wenn ich laufen was

Automatisches festlegen einer enum-Mitglied Wert auf seinen Namen

Anzahl der Antworten 2 Antworten
Ich ve wurde Herumspielen mit python-enum-Bibliothek und haben sich über ein Rätsel. In den docs, Sie zeigen ein Beispiel für eine die automatische Nummerierung von enum, wobei etwas definiert ist: class Color(AutoNumber): red = () green =

Finden Sie heraus, ob ein C++ - Objekt aufrufbar

Anzahl der Antworten 8 Antworten
Ist es möglich, zu schreiben, eine Art Charakterzug, sagen is_callable<T> sagt, wenn ein Objekt ein operator() definiert? Es ist einfach, wenn die Argumente für den Aufruf-operator im Voraus bekannt sind, aber nicht im Allgemeinen Fall. Ich will,

Vorlage partielle Spezialisierung mit mehreren template-argument-Fehler

Anzahl der Antworten 2 Antworten
Wenn ich templates partielle Spezialisierung auf eine Klasse mit einer template-argument, ich kann spezialisiert eine Methode wie diese: #include <cstdlib> template< std::size_t Dim > class Test { public: int foo(); }; template< std::size_t Dim > inline int

Was sind die coolsten Beispiele von metaprogramming, die du gesehen hast in C++?

Anzahl der Antworten 10 Antworten
Was sind die coolsten Beispiele von metaprogramming, die du gesehen hast in C++? Was sind einige praktische Anwendungen von metaprogramming, die du gesehen hast in C++? Ich denke, Boost Metaparse ist eine wirklich tolle Sache, github.com/boostorg/metaparse github.com/sabel83/metaparse_tutorial

Wie verlängern Sie ein Ruby-Modul mit dem makro-wie metaprogramming Methoden?

Anzahl der Antworten 1 Antworten
Betrachten Sie die folgende Erweiterung (das Muster popularisiert durch mehrere Rails-plugins im Laufe der Jahre): module Extension def self.included(recipient) recipient.extend ClassMethods recipient.send :include, InstanceMethods end module ClassMethods def macro_method puts "Called macro_method within #{self.name}" end end module

C++: Wie zu verlangen, dass ein template-Typ ist abgeleitet von der anderen

Anzahl der Antworten 6 Antworten
In ein Vergleichsoperator: template<class R1, class R2> bool operator==(Manager<R1> m1, Manager<R2> m2) { return m1.internal_field == m2.internal_field; } Gibt es eine Möglichkeit, dass ich durchsetzen konnte, dass R1 und R2 muss ein obertyp oder Untertyp-relation? Das heißt,

Ruby - konvertieren von symbol auf variable

Anzahl der Antworten 5 Antworten
Wie kann ich umwandeln :obj wieder in eine variable mit dem Namen obj innerhalb der def? def foo(bar) bar.some_method_call end foo :obj UPDATE: Der endgültige code ist aufwendiger als das, aber... Ich mag in der Lage sein

C++11 constexpr Funktion übergebene argument in das template-argument

Anzahl der Antworten 4 Antworten
Dies funktionierte vor einigen Wochen: template <typename T, T t> T tfunc() { return t + 10; } template <typename T> constexpr T func(T t) { return tfunc<T, t>(); } int main() { std::cout << func(10) <<

Erhalten Sie die einheimischen nennen-namespace in Python

Anzahl der Antworten 2 Antworten
Möchte ich zum abrufen der lokalen Variablen von Python, von einer aufgerufenen Funktion. Gibt es eine Möglichkeit, dies zu tun? Ich weiß, das ist nicht das richtige für die meisten der Programmierung, aber ich bin grundsätzlich building

Erstellen von eindeutigen zahlen zur compile-Zeit

Anzahl der Antworten 4 Antworten
Ich soll zum generieren von eindeutigen Nummern für jede Klasse in meinem Kopf, Primzahlen in meinem Fall Primzahlen, aber sagen wir mal das sollte nur aufeinanderfolgende zahlen also 1,2,3,4,usw. Kann ich natürlich fest diese: struct A {

Kann eine Zeile von Python-code kennen, seinen Einzug nesting level?

Anzahl der Antworten 5 Antworten
So etwas wie dieses: print(get_indentation_level()) print(get_indentation_level()) print(get_indentation_level()) Ich würde gerne so etwas wie dieses: 1 2 3 Kann den code Lesen, sich in dieser Weise? Alles was ich will ist die Ausgabe von mehr geschachtelte code-Teile mehr

Gibt es einen Weg, um eine C++ - Stil compile-Zeit, die Behauptung zu bestimmen, Maschine endianness?

Anzahl der Antworten 4 Antworten
Ich habe einige low-level-Serialisierung-code, die Vorlagen, und ich muss wissen, das system ist endianness zur compile-Zeit offenbar (da die Vorlagen spezialisiert ist, basiert auf dem system der endianness). Nun habe ich einen header mit einige Plattform definiert,

Update Ruby Attribute der Klasse hash, wenn sich eine Eigenschaft ändert

Anzahl der Antworten 1 Antworten
Ich versuche zu schreiben, eine Ruby Klasse, die funktioniert ähnlich wie Schienen AactiveRecord Modell in der Weise, dass Attribute behandelt werden: class Person attr_accessor :name, :age # init with Person.new(:name => 'John', :age => 30) def initialize(attributes={})

Wie bekomme ich eine Liste der Dateien, die `notwendig` in Ruby?

Anzahl der Antworten 2 Antworten
Dies ist lediglich ein experiment, aber ich Frage mich, ob es möglich ist, erhalten Sie eine Liste der require'd Edelsteine zur Laufzeit über eine Art von metaprogramming. Zum Beispiel, sagen wir ich habe: require 'rubygems' require 'sinatra'

Python: Hinzufügen von Feldern zu Objekten Dynamisch

Anzahl der Antworten 2 Antworten
Frage ich mich, ob es möglich ist, Felder hinzufügen, um Objekte dynamisch. Zum Beispiel, ich möchte in der Lage sein, so etwas wie: user = object() user.first_name = 'John' user.last_name = 'Smith' Wenn ich ausführen, dass in

Grails / Groovy - Domain-Objekt - Anzeigen der Eigenschaften

Anzahl der Antworten 3 Antworten
Wie kann ich eine Zuordnung der Schlüssel/Werte nur für die benutzerdefinierten Eigenschaften, die auf einer meiner domain-Objekte? Problem ist, wenn ich das selbst tun, ich bekomme meine Eigenschaften plus-Klasse, Metaklasse, Einschränkungen, Schließungen, etc... Ich nehme an, Grails

In Python, wie kann man den Namen eines member-Funktion der Klasse?

Anzahl der Antworten 4 Antworten
Ich habe eine Funktion, die einer anderen Funktion als parameter. Wenn die Funktion ist ein Mitglied einer Klasse, die ich brauche, um den Namen der Klasse. E. g. def analyser(testFunc): print testFunc.__name__, 'belongs to the class, ...

Aufrufen einer Methode Von einem String Mit der Methode den Namen Ruby

Anzahl der Antworten 4 Antworten
Wie kann ich das tun, was Sie reden,hier, aber in Ruby? Wie würden Sie die Funktion auf ein Objekt? und wie würden Sie tun, eine Globale Funktion (siehe jetxee ist Antwort auf der post erwähnt)? BEISPIEL-CODE: event_name

Add-Methode, um Metaklasse

Anzahl der Antworten 1 Antworten
Ich bin einfach zu spielen mit der Metaklasse Programmierung in Groovy. Aber plötzlich war ich vor einem kleinen problem, von dem ich einfach nicht arbeiten... Hier ist das einfache Skript: //define simple closure def printValueClosure = {

Ist es möglich, zum erstellen und initialisieren ein array von Werten mit template-metaprogramming?

Anzahl der Antworten 7 Antworten
Ich möchte in der Lage sein, ein array zu erstellen berechneter Werte (sagen wir einfachheitshalber, dass ich wollen, dass jeder Wert das Quadrat von es-index) zur compile-Zeit mit template-metaprogramming. Ist das möglich? Wie funktioniert jede Position im

Ruby: Wie Kette mehrere Methodenaufrufe zusammen mit "senden"

Anzahl der Antworten 3 Antworten
Gibt es eine eingebaute Möglichkeit, dies zu tun, richtig? class Object def send_chain(arr) o=self arr.each{|a| o=o.send(a) } return o end end Ich bin mir nicht sicher, aber ich habe Wege beschritten, wie dies vor, und ich find

Syntaktische Zucker in C/C++

Anzahl der Antworten 10 Antworten
Bin ich auf der Suche in Ruby, und finden Sie die Schlüsselwörter "bis" und "wenn" ist sehr interessant. Also dachte ich, was war ein guter Weg, um ähnliche keywords in C/C++. Dies ist, was ich kam mit:

Wie definiert Instanz-Methode in ruby dynamisch?

Anzahl der Antworten 2 Antworten
Möchte ich dynamisch erstellen Sie eine Instanz-Methode der Kind-Klasse durch die class-Methode der übergeordneten Klasse. class Foo def self.add_fizz_method &body # ??? (This is line 3) end end class Bar < Foo end Bar.new.fizz #=> nil class

Warum ist Python eval() lehnt diesen mehrzeiligen string, und wie kann ich es beheben?

Anzahl der Antworten 4 Antworten
Ich bin versucht, eval der folgenden tab eingerückt string: '''for index in range(10): os.system("echo " + str(index) + "") ''' Bekomme ich, "Es war ein Fehler: ungültige syntax , Zeile 1" Was ist es sich darüber? Muss

Wie verwende ich class_eval?

Anzahl der Antworten 1 Antworten
Ich verstehe nicht class_eval. class Module def attr_ (*syms) syms.each do |sym| class_eval %{def #{sym}= (val) @#{sym} = val end} end end end Was bedeutet die % bedeuten? Was bedeutet class_eval tun? Wo ist (val) aus? Ich

Was ist das __dict__.__dict__ Attribut einer Python-Klasse?

Anzahl der Antworten 4 Antworten
>>> class A(object): pass ... >>> A.__dict__ <dictproxy object at 0x173ef30> >>> A.__dict__.__dict__ Traceback (most recent call last): File "<string>", line 1, in <fragment> AttributeError: 'dictproxy' object has no attribute '__dict__' >>> A.__dict__.copy() {'__dict__': <attribute '__dict__' of

Kann ich zahlen mit dem C/C++ - Präprozessor?

Anzahl der Antworten 8 Antworten
Für einige base. Base 1 auch. Einige Sortieren von komplexen substitution -ing. Auch, und natürlich, dies zu tun, ist keine gute Idee in der realen Produktion code. Ich fragte nur aus Neugier. Du wirst nicht in der

Überschreiben von speziellen Methoden, die auf eine Instanz

Anzahl der Antworten 4 Antworten
Ich hoffe mir kann jemand dies beantworten, das hat eine gute Tiefe Verständnis von Python 🙂 Betrachten Sie den folgenden code: >>> class A(object): ... pass ... >>> def __repr__(self): ... return "A" ... >>> from types

SFINAE zu überprüfen, für geerbte member-Funktionen

Anzahl der Antworten 4 Antworten
Mit SFINAE, ich erkennen kann, ob eine bestimmte Klasse eine bestimmte member-Funktion. Aber was ist, wenn ich testen will, für geerbte member-Funktionen? Den folgenden arbeiten nicht in VC8 und GCC4 (D. H. erkennt, dass A hat eine

Ruby: Inherit code, der arbeitet mit Variablen Klasse

Anzahl der Antworten 1 Antworten
Die situation: ich habe mehrere Klassen, die sollte halten jeweils eine variable mit einem Konfigurations-hash; einen anderen hash für jede Klasse sondern gleich für alle Instanzen einer Klasse. Zuerst, ich habe versucht, wie diese class A def

Fehler: Klasse Vorlage bereits definiert wurde

Anzahl der Antworten 1 Antworten
Habe ich dieses kleine template-Klasse: namespace emple { template <class LinkedClass> class LinkedInList { public: LinkedInList() { active = false; } ~LinkedInList(){} LinkedClass* getNext() const { return next; } void setNext(LinkedClass* const next_) { next = next_;

Schreiben Sie ein Programm print "Hello, world!" - Programm

Anzahl der Antworten 7 Antworten
Habe ich nur angefangen zu Lesen Accelerated C++, und ich versuche, durch die übungen arbeiten, wenn ich stieß auf dieses: 0-4. Write a program that, when run, writes the Hello, world! program as its output. Und so

Ruby - method_missing

Anzahl der Antworten 9 Antworten
Ich versuche, die Implementierung eines method_missing für die Umwandlung von Dollar in andere Währungen, wie im tut 5.Dollar Renditen 5, 5.yen ergeben würde 0.065 5.euro 6.56 und so weiter. Diese kann ich jetzt tun. Jetzt muss ich

Groovy dynamische Eigenschaft pro Objekt

Anzahl der Antworten 3 Antworten
Verwendung Von Groovy 1.8. Ich bin versuchen, um eine dynamische definition der Klasse, der cache-Eigenschaften pro Objekt. Ich habe propertyMissing ohne die Eigenschaft zu dem Objekt einfach nur gut. Ich denke nur das Zwischenspeichern der Eigenschaften effizienter

Sichere Methode zum extrahieren von Eigenschaftsnamen

Anzahl der Antworten 3 Antworten
Ich bin auf der Suche nach einem Weg, um ein Objekt die Eigenschaft name mit typechecking, die erlaubt zu fangen mögliche Regressionen, die nach der Umgestaltung. Hier ist ein Beispiel: die Komponente muss ich dort übergeben Sie

So berechnen Sie den offset von einer Klasse zur compile-Zeit?

Anzahl der Antworten 4 Antworten
Gegebenen definition einer Klasse in C++ class A { public: //methods definition .... private: int i; char *str; .... } Ist es möglich zu berechnen, den offset einer Klasse zur compile-Zeit mit C++ template meta-Programmierung? Die Klasse

Fügen Sie die ruby-Klassen-Methoden oder Instanz-Methoden dynamisch

Anzahl der Antworten 3 Antworten
Ich bin ganz neu mit Ruby, also noch lernen. Ich wurde untersucht, ganz ein bisschen über das hinzufügen von Methoden dynamisch, und ich war erfolgreich erstellen Instanz-Methoden, aber nicht erfolgreich bei der Erstellung von Klassen-Methoden. Dies ist,

Template Meta-Programmierung mit Char-Arrays als Parameter

Anzahl der Antworten 10 Antworten
Ich bin Herumspielen mit TMP GCC 4.3.2 die Hälfte-Implementierung von C++11, und ich Frage mich, ob es einen Weg, um irgendwie tun Sie den folgenden: template <char x, char... c> struct mystruct { ... }; int main

Berechnung der fakultaet mit template-meta-Programmierung

Anzahl der Antworten 5 Antworten
Ich verstehe nicht, wie dieses Stück code (aus Wikipedia) funktioniert: template <int N> struct Factorial { enum { value = N * Factorial<N - 1>::value }; }; template <> struct Factorial<0> { enum { value = 1

Warum compile-Fehler mit enable_if

Anzahl der Antworten 5 Antworten
Warum diese nicht kompilieren mit gcc48 und clang32? #include <type_traits> template <int N> struct S { template<class T> typename std::enable_if<N==1, int>::type f(T t) {return 1;}; template<class T> typename std::enable_if<N!=1, int>::type f(T t) {return 2;}; }; int main()

Javascript automatische getter/setter (John Resig Buch)

Anzahl der Antworten 8 Antworten
Bin ich beim Lesen "Pro Javascript Techniques" von John Resig, und ich bin verwirrt mit einem Beispiel. Dies ist der code: //Create a new user object that accepts an object of properties function User( properties ) {

define_method: dynamisch erstellen von Methoden mit Argumenten

Anzahl der Antworten 3 Antworten
Möchte ich erstellen Sie eine Reihe von Methoden für eine find_by Funktion. Ich will nicht schreiben die gleiche Sache über und über wieder, so will ich mit metaprogramming. Sagen, ich will erstellen Sie eine Methode für das

Wie man Attribute, die definiert wurden durch attr_reader oder attr_accessor

Anzahl der Antworten 6 Antworten
Angenommen ich habe eine Klasse A class A attr_accessor :x, :y def initialize(x,y) @x, @y = x, y end end Wie bekomme ich x und y Attribute, ohne zu wissen, wie genau diese benannt wurden. E. g.

Kann jemand erklären, die Klasse.Superklasse.Klasse.Superklasse paradox?

Anzahl der Antworten 2 Antworten
Wahrscheinlich ist es nicht ein paradox, aber von einem Anfänger-Perspektive, scheint es sicher, dass Art und Weise. > Class.superclass => Module > Class.superclass.class => Class > Class.superclass.class.superclass => Module So eine Klasse parent-Modul, aber das Modul ist

Compile-Zeit sizeof_array ohne Verwendung eines Makros

Anzahl der Antworten 10 Antworten
Dies ist nur etwas, was gestört hat mich die letzten paar Tage, ich glaube nicht, dass es möglich ist, zu lösen, aber ich habe gesehen, Vorlage Magie vor. Hier geht: Erhalten die Anzahl der Elemente in einem