-
Data: 2014-11-12 12:13:08
Temat: Re: Makra higieniczne w jezyku Scheme
Od: firr <p...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]>
> 4. system callbackow czy 'przekazywania funkcji do funkcji' w c jest raczej slaby,
kiedys pisalem ntt i jeszcze kiedys pewnie napisze
> (ale nie teraz bo jest to glebszy temat)
to o czym pisałem bylo o tym (i to jest wazna uwaga) ze w c mozna przekazywac
wskazniki na
funkcje ale nie mozesz przekazac funkcji juz
z argumentami, na przyklad powiedzmy ze
mam funkcje profie() ktora mierzy czas wykonania (w nanosekundach) przekazanej jej
funkcji
profile( add(1,2,3) );
profile( print(" [11:47] <omatkoboska> idę na szluga ") );
profile( Beep(10,1000) );
a takie cos jest b. potrzebne.. (skladnia jest zajeta ale mozna dodac jakies
oznaczenie/slowo kluczowe informujace ze to nei ejst 'wywolywane na wejsciu tylko w
srodku' itp)
(co mozna zrobic w c to wiadomo.. tak jak zdaje sie mowisz mozna napisac sobie
wrappery
void add(void* args) { ....}
void print(void* args) { ....}
void Beep(void* args) { ....}
i funkcje przyjmujaca te wrappery
profile(pFunWrapper fun, void* args)
{
//... kod
fun(args);
// ... kod
}
)
tymaczasem mozna by to w c zrobic automatycznie
i jest to proste do zrobienia (czy to jest odpowiednik closures z innych jezykow to
nie wiem, byc moze nie do konca bo te przekazywane funkcje nie maja tutaj dostepu do
swoich jakichs tam kontekstow tylko po prostu ciagna swoje argumenty)
druga rzecz ze tą warstwe kombinowanie funkci w c miedzy sobą mozna jeszcze o wiele
bardziej rozbudowac o czym bylo pisane przeze mnie calkiem niedawno (chyba ze dwa
tygodnie temu na plc)
Następne wpisy z tego wątku
- 12.11.14 12:20 g...@g...com
- 12.11.14 12:22 firr
- 12.11.14 12:31 firr
- 12.11.14 12:34 firr
- 13.11.14 11:40 firr
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-02-12 Dziwne zachowanie magistrali adresowej w 8085
- 2025-02-11 Mini pecet
- 2025-02-10 Spalił się spaliniak
- 2025-02-10 zarowka wifi - z sensowna apka lub lepiej albo lokalnie lub przez web. I zeby harmonogram miala
- 2025-02-10 Chrzanów => Programista NodeJS <=
- 2025-02-10 Kraków => DevOps Engineer (Junior or Regular level) <=
- 2025-02-10 Dlaczego takie preferencje banków?
- 2025-02-10 Białystok => iOS Developer (Swift) <=
- 2025-02-10 Mińsk Mazowiecki => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-10 Białystok => System Architect (Java background) <=
- 2025-02-10 Współczesne mierniki zniekształceń nieliniowych THD audio, produkują jakieś?
- 2025-02-10 Szczecin => Senior Field Sales (system ERP) <=
- 2025-02-10 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-02-10 Chrzanów => Specjalista ds. public relations <=
- 2025-02-10 Chrzanów => NodeJS Developer <=