-
Data: 2020-07-14 20:59:59
Temat: Re: C is number one (znowu)
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> Nie. Smart pointer to taki obiekt, który *zawiera* *wskaźnik*.
Tego nie możemy zakładać, bo to szczegół implementacyjny. Smart pointer może sobie
zawierać adres w jakiejś innej postaci, niż wskaźnik. Nie musi wskaźnika zawierać.
To, co chciałem zaznaczyć odnosząc się do Twojej definicji, to fakt, że smart pointer
też jest pointerem. Bo spełnia jego funkcjonalną definicję.
Dlatego też analogia rowerowa była chybiona.
> Nie. Referencja jest ogólniejszym pojęciem.
Słusznie.
> Wskaźnik jest bardzo konkretnym pojęciem technicznym, silnie związanym z
liniowością adresów na architekturze von Neumanna. Można powiedzieć, że pamięć
adresowana liniowo stanowi ramę pojęciową dla wskaźnika.
Nie szedłbym tak daleko. W ogóle nie rozumiem, po co mieszasz tutaj architekturę von
Naumanna. Na harwardzkiej nie ma wskaźników? Są.
Liniowa pamięć też nie ma tutaj związku. W nieliniowej nie ma wskaźników? Są.
Cytujesz losowe pojęcia.
Rozróżnienie wskaźników od referencji jako ich bardziej niskopoziomowe wcielenie jest
użyteczne (np. referencje w Javie mogą odnosić się do zdalnych obiektów, nie tylko do
lokalnych i to sprawia, że referencje w Javie są konstruktem wyższego poziomu, niż
wskaźniki w C). Ale w tych abstrakcyjnych definicjach nie widzę sensu odmawiania
smart pointerom ich pointerowej "duszy" (nie żebym coś tam nawiązywał :-D ).
Inaczej, krócej: jeżeli podzielimy te wszystkie obiekty na pointery i referencje, to
smart pointery są w tej pierwszej grupie.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 05.10.20 12:36 Sushi Master
Najnowsze wątki z tej grupy
- 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
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-05-18 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-18 Warszawa => Software .Net Developer <=
- 2024-05-18 Warszawa => Mid/Senior QA Engineer <=
- 2024-05-18 Ulm => Solution Architect (sichere Kommunikation und IoT-Loesungen <=
- 2024-05-18 Katowice => Head of Virtualization Platform Management and Operating S
- 2024-05-18 Warszawa => SAP WM Consultant / Execution <=
- 2024-05-18 Wrocław => Consultant/Implementer Comarch ERP XL <=
- 2024-05-18 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-05-18 Warszawa => Account Manager (Recruitment Services) <=
- 2024-05-18 Łódź => Salesperson - CRM Systems <=
- 2024-05-18 Łódź => Handlowiec - Systemy CRM <=
- 2024-05-17 ZŁOMNIK o pracy w TVN TURBO, nowych przepisach i współczesnej motoryzacji. Turbo Taryfa!
- 2024-05-17 Białystok => DevOps Engineer Conexa First (Contractor) <=
- 2024-05-17 Warszawa => Starszy inżynier oprogramowania (Rust) <=
- 2024-05-17 Zabrze => Junior HelpDesk <=