Sorğular 'metaprogramming'

Metaproqramlaşdırma, makro və ya metaclasses ilə olduğu kimi, proqramlaşdırma mühitinin reproduksiyası qabiliyyətidir.
11
Cavablar

Nümunə sahələrindən Python lüğəti

Özbaşına bir obyektdən bir lüğət yaratmaq üçün quraşdırılmış bir funksiyanın olub olmadığını bilirsinizmi? Bu kimi bir şey etmək istərdim: >>> sinif Foo: ... bar = 'hello' ... baz = 'dünya' ... >>> f = Foo () >>> rekvizit (f) {'ba ...
14 Sentyabrda təyin olundu 9-da '08
5
Cavablar

Bir Python kod satırı bir əlavə yuvasının səviyyəsini bilir?

Bu kimi bir şeydən: print (get_indentation_level ()) print (get_indentation_level ()) print (get_indentation_level ()) Bu kimi bir şey almaq istərdim: 1 2 3 Kodu bu şəkildə özünü oxuya bilərmi? İstədiyim hər şey ...
26 Avq. '16 'da 21:07
4
Cavablar

Define_method argümanlarını necə ötürə bilərəm?

Define_method ilə müəyyən edilmiş bir üsula bir mübahisə keçirmək istərdim, bunu necə edərdim?
18 Sentyabrda təyin olundu '08 saat 06:03 'da
4
Cavablar

Ruby'də bir funksiya adı olan bir simli bir funksiyanı çağırırıq

Bura haqqında dediklərini necə edə bilərəm, Ruby də? Bir obyektdə bir funksiyanı necə yerinə yetirirsiniz? və qlobal bir funksiyanı necə edərdiniz (göstərilən mövqeyə jetxee cavabına baxın)? ÖRNEK KOD: event_name = "load" def load () "load () funksiyası qoyur ...
10 sept qurdu . '09 saat 23:10 'da
13
Cavablar

1 + 2 + 3 + ... + 1000 hesablamaq üçün C #, C ++ və ya Java kompilyatorunu necə idarə etmək olar?

Son müsahibəsində mənə çox qəribə bir sual verildi. Müsahib mənə soruşdu: 1 + 2 + 3 + ... + 1000, sadəcə kompilyatorun funksiyalarını istifadə edir. Yəni bir proqram yazmaq və icra etməyə icazə vermirəm, ancaq mən ...
Jan 06 tarixini təyin etdi '12 saat 22:40 'da
3
Cavablar

Objective-C sinifi # 8594; string kimi: [NSArray className] # 8594; @ "NSArray"

Sinif sinifinin adını sinif obyektindən özünə almağa çalışıram. Məsələn, [NSArray className]; // @ "NSArray" object_getClassName (id obj) tapdım, amma bunun üçün bir nümunə keçirilməsini tələb edirəm və mənim vəziyyətim yararsızdır. Um ...
25 Fevral təyin etdi '10 at 9:01
12
Cavablar

C ++-da kompilyasiya zamanı simvollarının bəyannaməsi

C ++-da tərtib edərkən strings yaratmaq və idarə etmək bacarığı bir neçə faydalı proqrama malikdir. C ++-da tərtibat dövrünün stringsini yarada bilə bilsəniz, proses çox çətindir, çünki simli bir dəyişkən ardıcıllıqla elan edilməlidir ...
07 Aprel ayı '13 5:10 'da
3
Cavablar

Parametrlərin növünü və dönüş lambda növünü müəyyən etmək mümkündürmü?

Lambda verildiyində, parametrin növü və qaytarılma dəyərinin növü müəyyən edilə bilərmi? Əgər belədirsə, necə? Əsasən mən lambda_trait istərdim, bu da aşağıdakı yollarla istifadə edilə bilər: auto lambda = [] (int i) {return long (i * 10); }; lambda_traits <...
30 oct. '11 'də 8:47' də
8
Cavablar

C ++ şablonuna metafroqramlama üçün ən yaxşı giriş?

Statik metaprogramming (şablon metaprogramma kimi də tanınır) kompilyasiya zamanı proqramları icra etməyə imkan verən əla C ++ üsuludur. Kanonik metafroqramların bu nümunəsini oxuduğum anda başıma bir ampul çıxdı ...
22 Sentyabr tarixində təyin olundu. '08 ilə 0:50
1
cavab

Necə Pony (ORM) onun tövsiyələr edir?

Pony ORM, jeneratörü SQL-ə çevirmək üçün gözəl bir hiylədir. Məsələn: >>> seç (p for p in p.name.startswith ('Paul')). Order_by (Person.name) [: 2] SEÇİN "p". "Id", "p". "," p "." YAŞ "FROM" Kişi "" p "WHERE" ...
20 Aprel tarixində təyin olundu '13 'də saat 4:53' də
7
Cavablar

Sinif metodları yaratmaq üçün define_method'u necə istifadə etmək olar?

Sinif metafroqramlaşdırma metodları yaratmağa çalışırsınızsa bu faydalıdır: def self.create_methods (method_name) # Məsələn üsulları yaratmaq üçün: define_method method_name do ... end #
15 Aprel tarixində təyin olundu '09 saat 20:03 'da
31
cavab

Python Vs. Metaproqramlaşdırma üçün Ruby

Hal-hazırda, mən əsasən bir proqramçı D və mənim toolbox başqa bir dil əlavə etmək istəyirəm, tercihen statik tərtib edilmiş bir dildə etmək mümkün deyil, hack metaprogramming dəstəkləyir ki, bir ...
Sentyabr ayını təyin edin '08 at 1:50
7
Cavablar

C ++ SFINAE nümunələri?

Daha çox meta-proqramlaşdırma şablonları almaq istəyirəm. SFINAE "dəyişdirmə qüsuru səhv deyil" deməkdir. Amma kimsə SFINAE üçün yaxşı mənə göstərə bilərmi?
11 iyun 'da 21:25' də təyin olundu
11
Cavablar

Vaxt tərtib edin

Bir neçə müxtəlif yerlərdə oxuyuram ki, C ++ 11 simli litals istifadə edərək kompilyasiya vaxtında bir hash simli hesablayırdılar. Ancaq heç kim çıxmaq üçün hazır deyil və mümkün və ya necə ediləcəyini söyləyər. Taşıma ...
21 yanvar tarixində təyin olundu '10 at 21:08
2
Cavablar

Bir nümunə dəyişəninin dəyərini alın, adını verin

Ümumiyyətlə, məndə adı olan bir obyektə bir keçid əldə edə bilərəm? Xüsusilə, parametr adlarının siyahısı var (üzv dəyişənlər dinamik şəkildə qurulur, ona görə də mən onlara birbaşa daxil ola bilmərəm). Hər bir parametr bir obyektdir ...
02 iyul '09 saat 17: 30-da müəyyən edilir