-
X-Received: by 10.31.161.87 with SMTP id k84mr492967vke.10.1512176536775; Fri, 01 Dec
2017 17:02:16 -0800 (PST)
X-Received: by 10.31.161.87 with SMTP id k84mr492967vke.10.1512176536775; Fri, 01 Dec
2017 17:02:16 -0800 (PST)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
0.net!peer02.am4!peer.am4.highwinds-media.com!peer03.iad!feed-me.highwinds-medi
a.com!news.highwinds-media.com!m31no83746qtf.0!news-out.google.com!t48ni257qtc.
1!nntp.google.com!g35no83743qtk.1!postnews.google.com!glegroupsg2000goo.googleg
roups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Fri, 1 Dec 2017 17:02:16 -0800 (PST)
In-Reply-To: <2...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=37.47.16.111;
posting-account=Sb6m8goAAABbWsBL7gouk3bfLsuxwMgN
NNTP-Posting-Host: 37.47.16.111
References: <0...@g...com>
<oukn36$l7m$1@node2.news.atman.pl>
<4...@g...com>
<oun2nc$r4t$1@node2.news.atman.pl>
<8...@g...com>
<ouviso$22u$1@node1.news.atman.pl>
<9...@g...com>
<1...@g...com>
<e...@g...com>
<ovgk2k$kc2$1@gioia.aioe.org>
<5...@g...com>
<ovnil0$ubp$1@gioia.aioe.org>
<4...@g...com>
<ovq7de$f0m$1@node2.news.atman.pl>
<c...@g...com>
<izm4rewsde4p$.dlg@tyczka.com>
<2...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d...@g...com>
Subject: Re: Architektura aplikacji - powody wyłączania dll z exe
From: fir <p...@g...com>
Injection-Date: Sat, 02 Dec 2017 01:02:16 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Body-CRC: 588985468
X-Received-Bytes: 4931
Xref: news-archive.icm.edu.pl pl.comp.programming:211815
[ ukryj nagłówki ]W dniu sobota, 2 grudnia 2017 00:11:12 UTC+1 użytkownik M.M. napisał:
> On Friday, December 1, 2017 at 8:14:21 PM UTC+1, Roman Tyczka wrote:
> > On Fri, 1 Dec 2017 04:21:11 -0800 (PST), M.M. wrote:
> >
> > > Niepokoi mnie tylko jedno. W językach takich jak C, C++ , Pascal i w
> > > kilku innych, można zrobić:
> > >
> > > var = foo() // trudna do oszacowana wartość
> > > var(); // wywołanie funkcji
> > >
> > > Wiem że taka praktyka programistyczna jest bardzo zła, ale formalnie
> > > poprawna. Jak więc linkier / kompilator może ustalić, że pewne funkcje
> > > z libów można pominąć?
> >
> > Przecież robiąc to przypisanie dajesz znać, że tego używasz, zatem zostaje
> > nieusunięte, co tu niejasnego?
> >
>
> Ściślej, kompil000000ator dostaje informacje o nieprzewidywalnych wywołaniach w
> momencie gdy jakaś zmienna jest rzutowana na typ wskaźnika na funkcję.
> Jak wtedy kompilator powinien się zachować? Czy powinien wcielić absolutnie
> całego liba?
>
widze ze ciezka niekumacja tu sie odwala (co jest troche smutne)
to co robi kompilator to poprostu buduje sekcje importow (ktora z tego co wiem nie
jest niczym innym co lista stringow) z symboli ktore
w zrodle sa oznaczone jako symbole
do importu
(z tego z kolei co wiem w zrodle c
jako symbole do importu sa oznaczane te symbole ktore nie sa
w nim zdefiniowane) (tj w przypadku dllek trzeba ztcw jawnie naisac
__declspec(dllimport) ale w wypadku
linlkowanie ststycznego systarczy
z tcw jedynie zadeklarowac symbol
bez definicji (nie pamietam czy trzeba dodawac slowo extern ale oip chyba raczej nie)
jesli var bedzie zadeklarowane jako taki symbol do importu np
void var(int);
to linker zrobi z tego symbol do importu, przypisanie nie ma tu ztcw nic do rzeczy, z
tego co kojarze takie przypisanie chyba raczej powinno wyrzicic blad bo to var chyba
nie jest tak do konca zmienną
(jest ew adresem funkcji w pamieci
wiec niby mozna tam cos wpisac, wiec moze i powinno byc dozwolone choc i tak wywola
segfault)
powtarzajac linker (wlasciwie
powinien to byc kompilator ale
ze wzgledu na to ze jak sie buduje sekcje importu symbol trzeba podpiac pod konkretna
nazwe dllki w ktorej ma byc on szukany i taki kompilator musi poszukac w jakiej
dllce ten symbol moze byc wiec robi nieststy jakby za linker) bedzie importowal
jedynie to co jest zadeklarowane jako symbole do importu
(przy okazji jest to doba ilustracja dlaczego czy tez na jakiej zasadzie "asembler"
czytez
"niskopoziomowa orientacja" przydaje sie by zrozumiec jasno
pewne rzeczy)
Następne wpisy z tego wątku
- 02.12.17 08:59 AK
- 02.12.17 09:15 AK
- 02.12.17 09:24 AK
- 02.12.17 12:15 fir
- 02.12.17 12:43 fir
- 02.12.17 16:12 AK
- 02.12.17 16:15 AK
- 02.12.17 16:26 fir
- 12.09.18 19:55 s...@g...com
Najnowsze wątki z tej grupy
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-16 dron na granicy polsko niemieckiej
- 2025-07-16 Warszawa => Senior IT Recruitment Consultant <=
- 2025-07-16 Gdańsk => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-16 Gdańsk => Delphi Programmer <=
- 2025-07-16 Warszawa => BI Developer <=
- 2025-07-16 Gdańsk => Programista Delphi <=
- 2025-07-16 chroń PESEL dziecka
- 2025-07-16 Rzeszów => Spedytor Międzynarodowy <=
- 2025-07-16 Gdańsk => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-07-16 Kraków => Kotlin Developer <=
- 2025-07-16 Warszawa => Inżynier oprogramowania .Net <=
- 2025-07-16 Tadeusz Rolke RIP
- 2025-07-14 Dwa dylematy
- 2025-07-14 Re: Dwa dylematy
- 2025-07-14 [UOKiK] Jeronimo Martins, właścicielowi sieci Biedronka, [przedstawił zarzut] udział[u] w zmowie z 32 firmami transportowymi.