-
X-Received: by 10.140.95.135 with SMTP id i7mr21521qge.12.1415790788350; Wed, 12 Nov
2014 03:13:08 -0800 (PST)
X-Received: by 10.140.95.135 with SMTP id i7mr21521qge.12.1415790788350; Wed, 12 Nov
2014 03:13:08 -0800 (PST)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!
hl2no421207igb.0!news-out.google.com!u1ni9qah.0!nntp.google.com!u7no1051776qaz.
1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Wed, 12 Nov 2014 03:13:08 -0800 (PST)
In-Reply-To: <1...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=78.30.87.108;
posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
NNTP-Posting-Host: 78.30.87.108
References: <5...@g...com>
<a...@4...com>
<6...@g...com>
<7...@g...com>
<2...@g...com>
<1...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <1...@g...com>
Subject: Re: Makra higieniczne w jezyku Scheme
From: firr <p...@g...com>
Injection-Date: Wed, 12 Nov 2014 11:13:08 +0000
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
Xref: news-archive.icm.edu.pl pl.comp.programming:206942
[ ukryj 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
- 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??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-12-01 "Chciałem zamówić kurs tym"
- 2024-11-30 Windykatorzy ścigają spadkobierców z mandat nieboszczyka za przekroczenie prędkości???
- 2024-11-30 Łódź => Technical Artist <=
- 2024-11-30 Lublin => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-30 Warszawa => Microsoft Dynamics 365 Business Central Developer <=
- 2024-11-30 Bieruń => Team Lead / Tribe Lead FrontEnd <=
- 2024-11-30 Zielona Góra => Senior PHP Symfony Developer <=
- 2024-11-30 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-30 Lublin => Spedytor międzynarodowy <=
- 2024-11-30 Warszawa => Mid IT Recruiter <=
- 2024-11-30 Warszawa => Fullstack Developer <=
- 2024-11-30 Żerniki => Dyspozytor Międzynarodowy <=
- 2024-11-30 Warszawa => System Architect (background deweloperski w Java) <=
- 2024-11-30 Katowice => Key Account Manager (ERP) <=
- 2024-11-30 Immatrykulacja...