-
Data: 2012-07-28 00:57:08
Temat: Re: Czym jest programowanie?
Od: Andrzej Jarzabek <a...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 27/07/2012 11:18, AK wrote:
> Użytkownik "Andrzej Jarzabek" <a...@g...com> napisał:
>
>> Nie wiem, co rozumiesz przez typy proste, ale parametrów przez
>> referencję (aka 'przez zmienną') nie można przekazać niezależnie od typu.
>> Możnqa przekazać parametr typu 'referencja na obiekt', ale przekazać
>> można ją tylko przez wartość. Zatem nie da się zrobić:
>>
>> Object a=cośtam();
>> [...]
>> f(a);
>> // funkcja f zmieniła wartość a, tak że wskazuje na inny obiekt niż
>> // przed wywołaniem
>
> 1. Naucz sie opisywac temat _poprawnie_ bo przekazywanie parametrow
> przez referencje to _nie jest to__ co opisujesz.
W C++ tak się to nazywa. Proszę o jakiegoś linka do opisu co to znaczy
przekazywanie przez referencję.
> 2. _Bardzo dobrze_, ze w Javie (w Pythonie zreszta tez) nie da sie tego
> zrobic.
> Juz sama zmiana stanu obiektu przekazywanego przez do funkcji przez
> (ref) referencje rodzi problemy i skutki uboczne,
Kolejna rzecz, której mi brakuje w Javie - const.
> a co dopiero gdyby sie sam obiekt zmienil brrr.... :) Do tego sluzy
Niedawno ktoś opisywał, że ma problemy z za długimi metodami. Części
tych metod możnaby wyobrębnić w osobne metody, ale problemem jest użycie
w tych częściach zmiennych lokalnych. Brak możliwości przekazania
zmiennych (typów referencyjnych czy jakichkolwiek innych) przez
referencję powoduje utrudnienie refektoryzacji typu 'extract method'.
> return i rzeczy typu 'tuple' (lub
> udajace tuple).
Nie ma zdaje się takiego czegoś w Javie.
> 3. Uda Ci sie w C++ osiagnac zamierzony efekt uzywajac tylko referencji
> (&) ?
Normalnie. Zacznijmy od tego, że najbliższym odpowiednikiem typu
referencyjnego z Javy jest w C++ wskaźnik, więc odpowiednikiem:
JakisTyp zmienna = new JakisTyp();
będzie w C++
JakisTyp* zmienna = new JakisTyp();
(może być shared_ptr albo unique_ptr)
więc jeśli funkcja f ma sygnaturę
f(JakisTyp*&);
to mam:
JakisTyp* a=cośtam();
[...]
f(a);
// a może wskazywać na coś innego niż przed wywołaniem f
Następne wpisy z tego wątku
- 28.07.12 00:59 Andrzej Jarzabek
- 28.07.12 13:09 yamma
- 28.07.12 16:27 Andrzej Jarzabek
- 30.07.12 10:18 Paweł Kierski
- 30.07.12 10:40 Edek Pienkowski
- 30.07.12 18:54 Waldek M.
Najnowsze wątki z tej grupy
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- 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ą."
Najnowsze wątki
- 2025-08-22 Cenzura na wolnemedia.net - likwidacja codziennej sekcji "Sygnały zauważone"
- 2025-08-22 Aku do UPS
- 2025-08-22 Przygoda hotelowa
- 2025-08-22 "Czy pan Frog ..."
- 2025-08-22 Katowice => Programista Kotlin <=
- 2025-08-22 Warszawa => Sales Executive / KAM <=
- 2025-08-22 Warszawa => Inżynier oprogramowania .Net <=
- 2025-08-22 Warszawa => Starszy Programista C <=
- 2025-08-22 Kraków => Senior Fullstack Engineer (Low-Code Platform) <=
- 2025-08-22 Lublin => Delphi Programmer <=
- 2025-08-22 Warszawa => DevOps Engineer (AWS) <=
- 2025-08-21 Nowe style na energokod.pl
- 2025-08-21 czy ludzie przestali słuchać muzyki?
- 2025-08-21 Rozprawa sądowa o parkowanie.
- 2025-08-21 Wszystko, co musisz wiedzieć o Wi-Fi 8