Pytania otagowane jako metaprogramming

Metaprogramowanie to możliwość przeprogramowania środowiska programistycznego, tak jak w przypadku makr lub metaklas.

12
Słownik Python z pól obiektu
Czy wiesz, czy istnieje wbudowana funkcja do budowania słownika z dowolnego obiektu? Chciałbym zrobić coś takiego: >>> class Foo: ... bar = 'hello' ... baz = 'world' ... >>> f = Foo() >>> props(f) { 'bar' : 'hello', 'baz' : 'world' } UWAGA: Nie powinno zawierać metod. Tylko pola.


4
Wywołanie metody z łańcucha o nazwie metody w języku Ruby
Jak mogę zrobić to, o czym oni tutaj mówią , ale w Rubim? Jak wykonałbyś funkcję na obiekcie? i jak wykonałbyś funkcję globalną (zobacz odpowiedź jetxee we wspomnianym poście)? PRZYKŁADOWY KOD: event_name = "load" def load() puts "load() function was executed." end def row_changed() puts "row_changed() function was executed." end …


5
Czy wiersz kodu Pythona może znać poziom zagnieżdżenia wcięć?
Z czegoś takiego: print(get_indentation_level()) print(get_indentation_level()) print(get_indentation_level()) Chciałbym dostać coś takiego: 1 2 3 Czy kod może się w ten sposób odczytać? Chcę tylko, aby dane wyjściowe z bardziej zagnieżdżonych części kodu były bardziej zagnieżdżone. W ten sam sposób, w jaki ułatwia to odczytanie kodu, ułatwiłoby to odczytanie danych wyjściowych. Oczywiście …



4
Czy można określić typ parametru i zwracany typ lambdy?
Czy biorąc pod uwagę lambdę, można określić typ jej parametru i typ zwracany? Jeśli tak, w jaki sposób? Zasadniczo chcę, aby lambda_traitsmożna było używać na następujące sposoby: auto lambda = [](int i) { return long(i*10); }; lambda_traits<decltype(lambda)>::param_type i; //i should be int lambda_traits<decltype(lambda)>::return_type l; //l should be long Motywacją jest …


7
Czym właściwie jest metaprogramowanie?
Czytałem artykuł na TheServerSide o programowaniu ployglot na platformie Java . Niektóre komentarze w artykule odnoszą się do metaprogramowania jako możliwości generowania kodu (być może w locie). Czy metaprogramowanie to możliwość generowania kodu w locie, czy też możliwość wstrzykiwania metod i atrybutów do istniejących obiektów w czasie wykonywania (na przykład …



8
Najlepsze wprowadzenie do metaprogramowania szablonów w C ++? [Zamknięte]
Zamknięte. To pytanie nie spełnia wytycznych dotyczących przepełnienia stosu . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było na temat przepełnienia stosu. Zamknięte 3 lata temu . Popraw to pytanie Metaprogramowanie statyczne (inaczej „metaprogramowanie szablonów”) to doskonała technika C ++, która umożliwia wykonywanie programów w czasie …

1
Jak Pony (ORM) wykonuje swoje sztuczki?
Pony ORM robi niezłą sztuczkę konwertowania wyrażenia generatora na SQL. Przykład: >>> select(p for p in Person if p.name.startswith('Paul')) .order_by(Person.name)[:2] SELECT "p"."id", "p"."name", "p"."age" FROM "Person" "p" WHERE "p"."name" LIKE "Paul%" ORDER BY "p"."name" LIMIT 2 [Person[3], Person[1]] >>> Wiem, że Python ma wbudowane wspaniałe funkcje introspekcji i metaprogramowania, ale …


Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.