eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingRe: przemyślenia na temat pamięci i rozmiaru plików
Ilość wypowiedzi w tym wątku: 2

  • 1. Data: 2009-01-05 14:01:52
    Temat: Re: przemyślenia na temat pamięci i rozmiaru plików
    Od: Jakub Debski <d...@w...pl>

    Remek explained on 2008-12-31 :
    > Co konkretnie możesz wskazać błędnego, lub niepotrzebnego w konkretnej
    > funkcji?

    - Brak ujednoliconego sposobu zwracania błędów (HANDLE, LastError,
    przez wartość, przez parametr, TRUE/FALSE, HRESULT).
    - Przekazywanie do funkcji olbrzymiej listy parametrów nie przez
    wskaźnik na strukturę (mój ulubieniec to CreateProcessWithLogon).
    - Używanie jednocześnie typów prostych języka C (unsigned int), typów
    specyficznych dla "Windows Data Types" (UINT) oraz "własnych" typów
    (u_short). Te ostatnie szczególnie kochane w Winsock2, typy C w GDI,
    zaś typy Windows w pozostałym API. Czasem używanie różnych konwencji w
    jednej funkcji np. SetWindowsHookEx.
    - Używanie w typach przedrostków LP dla wskaźników, czasami P, a
    czasami '*'. Często różne konwencje są w jednej funkcji (np.
    CryptAcquireContext). Języki z silniejszą typizacją niż C wymagają
    rzutowania między takimi typami.
    - Zaśmiecanie przestrzeni nazw tysiącami definicji typów bez żadnych
    przedrostków. Dołączenie nowego pliku nagłówkowego może wymagać masy
    zmian w Twoim kodzie lub różnych sztuczek związanych z jego
    reorganizacją.
    - Pozostałości z 16 bitowego Windows np. LPARAM i WPARAM.
    - HANDLE czasami traktowany jako 32 bitowy int, gdy według definicji
    powinien być PVOID.
    - W GDI API niektóre wartości jako WORD, gdy współcześnie potrzebne są
    DWORDy.
    - Brak jednej konwencji nazw funkcji. Część zamiast windowsowych
    wielbłądów typu CreateFileA występuje jako _xxxx np. _lopen, część to
    same małe litery np. lstrlen, część ma przedrostki np.
    WSAAsyncGetHostByAddr, część to mix różnych konwencji np.
    ImageList_Add).

    > Po sprawdzeniu okazało się, że obie procedury są identyczne. W związku z
    > tym zamiast pisać bzdury, proponuję podpierać się konkretami.

    Wystarczą powyższe, czy dalej będziesz pisał bzdury?

    Jakub



  • 2. Data: 2009-01-06 00:52:58
    Temat: Re: przemyślenia na temat pamięci i rozmiaru plików
    Od: Maciej Piechotka <u...@g...com>

    Jakub Debski <d...@w...pl> writes:

    > Remek explained on 2008-12-31 :
    >> Co konkretnie możesz wskazać błędnego, lub niepotrzebnego w konkretnej
    >> funkcji?
    >
    > - Brak ujednoliconego sposobu zwracania błędów (HANDLE, LastError,
    > przez wartość, przez parametr, TRUE/FALSE, HRESULT).

    Dorzuć errno i WSAGetLastError ;) W dodarku zawierają niby
    podobne wartości tylko że o innych wartościach i z przedrostkiem WSA.

    W dokumentacji radzą przy portowaniu programów pisać:
    #define errno WSAGetLastError ()
    ostrzegając że może to powodować problemy jeśli ktoś miesza z innymi
    funkcjami POSIX. Dlaczego od razu nie errno?

    Pozdrawiam
    --
    I've probably left my head... somewhere. Please wait untill I find it.
    Homepage (pl_PL): http://uzytkownik.jogger.pl/
    (GNU/)Linux User: #425935 (see http://counter.li.org/)

strony : [ 1 ]


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: