Komentarze do 10. Typy proste i referencyjne
Shreeve
27 lipca 2006,
7:54
Kod działa, ale zastanawia mnie, w jaki sposób mamy dostęp do zmiennych klasy, bez tworzenia jej instancji, lub bez oznaczania jej jako static, tym bardziej, że jest dostęp poprzez nazwę klasy?
nj
29 lipca 2006,
11:40
@Shreeve:
"KlasaPomocnicza obiekt1 = new KlasaPomocnicza();
KlasaPomocnicza obiekt2 = new KlasaPomocnicza();"
Te linie tworzą dwie nowe instancje klasy KlasaPomocnicza: obiekt1 i obiekt2...
Dzięki temu, że zmienna x NIE jest statyczna, każda instancja przechowuje swoją wartość iksa, do którego dostęp mamy przez nazwę instancji, np. obiekt1.x - mam nadzieję, że rozjaśniłem. Pozdrawiam :)
Wujek
5 sierpnia 2006,
20:48
Błąd w kodzie; pierwsze okno
int x = 2;
int y = x;
x = x + 8;
powinno być:
int x = 2;
int y = x;
y = x + 8;
Ciocia
10 sierpnia 2006,
12:38
Sam jestes błąd w kodzie
Wujek
10 sierpnia 2006,
17:01
Ty ciotka nie podskakuj bo ci zaraz zrobie masowanie jąder
kostii
11 sierpnia 2006,
11:56
nie błąd w kodzie tylko źle zrozumiałes lekcje
Kazik
14 sierpnia 2006,
14:24
Tak jest!!! Pała!!! Źle zrozumiałeś :) lol
Wujek
18 sierpnia 2006,
17:09
Przepraszam wszystkich za moje wybryki na forum, oczywiście, że jest bład z mojej strony. Pozdro. Po prostu zwiększamy x'a o 8
bartek
21 sierpnia 2006,
16:33
Cytat:
Stałe to dane, których wartości nie możemy zmieniać. W pewnym uproszczeniu możemy sobie wyobrazić, że są to zmienne, których wartości są zawsze takie same. Koniec cytatu. Jeżeli stała to nie zmienna!!!
Cytat:
W C#, tak jak w innych językach obiektowych, mamy typy proste i referencyjne.
Koniec cytatu.
Tak w C# mamy typy proste, javie też, ale nie jest to regułą w językach obiektowych!!!!!!!
yaro27
11 lipca 2008,
15:26
String typem prostym?? Raczej referencyjnym.
Poniższy link wszystko wyjaśnia:
http://www.microsoft.com/poland/developer/net/podstawy/clr.mspx
nie
16 września 2008,
14:19
carck3r
1 maja 2009,
21:35
Błąd - string jest typem referencyjnym. Dowód: http://msdn.microsoft.com/en-us/library/490f96s2.aspx
Programista C++
23 lipca 2009,
10:49
Cytat:
określiliśmy, że obydwa obiekty wskazują na to samo miejsce<br />w pamięci, a więc każda zmiana danych wskazywanych przez jeden z obiektów,<br />powoduje zmianę danych wskazywanych przez drugi
Chyba szkoda czasu na ten kurs. Obiekty na coś wskazują? obiekt1 i obiekt2 to nie obiekty tylko referencje do obiektów. A tak BTW po wykonaniu linii biekt2 = obiekt1; w pamięci nie ma już dwóch obiektów tylko jeden, bo drugi zostanie usunięty przez GC. Żenada.<br />
DOŚWIADCZONY programista C#
24 września 2009,
10:49
Cytat: "Do typów prostych należą dane liczbowe takie jak: „int”, „float”, itd., a także typy wyliczeniowe oraz struktury („string” to struktura, a więc jest typem prostym)"
Bzdura!
Jak już kilka osób wpomniało string jest oczywiście typem referencyjnym jednak jego zachowanie zostało zaimplementowane tak jak struktury, tj. przeciążony został m. in. operator przypisania, który tworzy nowy obiekt string"a.
Ponadto największym błędem tego artykułu jest stwierdzenie, że typami prostymi są również wypy wyliczeniowe i struktury (!). Typy proste to NIEKTÓRE struktury, dla których istnieją aliasy, np. dla struktury System.Int32 istnieje alias int, dla System.Double - double, dla System.Int64 - long itp.
Ponadto typy proste rządzą się swoimi zasadami:
http://msdn.microsoft.com/en-us/library/aa691144(VS.71).aspx
DOŚWIADCZONY programista C#
24 września 2009,
10:55
I jeszcze jedno - autorowi tego artykułu radzę zdobycie większego doświadczenia w programowaniu w platformie .NET przed napisaniem kolejnego artykułu. Wprawdzie minęło już sporo czasu od publikacji tego artykułu jednak to tyczy się każdego innego zagadnienia, gdyż wiele niedoświadczonych osób zagląda tutaj i bierze ten arykuł za pewnik opowiadając innym podobne brednie. Wydaje misię, że należy rozpatrzyć usunięcie tego artukułu lub poprawienie go przez doświadczoną osobę.
nos
2 listopada 2009,
15:45
Dla "DOŚWIADCZONEGO programisty C#" być może są tu jakieś niścisłości, ale dla początkującego, nie ma znaczenia, czy nazwywa się to tak, czy siak. Akurat w tym przypadku chodzi o przyswojenie tych pojeć, a nie o nazwanie ich. To bardzo początkujący kurs i lepiej go nie usuwajcie (błędy można poprawić :)).
StWolf
6 listopada 2009,
11:26
Witam
Wlasnie korzystalem z tego artykulu, cos mi nie pasowalo i dzieki niebiosom przeczytalem komentarze... Z mojego punktu widzenia, taki artykul dyskwalifikuje w nauce jezyka! Powód to prawdziwe informacje z zaszytymi powaznymi bledami w tutku, ktore dla swiezaka ( jak ja ;"> ) zapadaja dlugo w pamieci, trudno je potem naprostować! Bardzo mi przykro zolta kartka dla twórcy się należy.
Ryszard
26 stycznia 2010,
13:44
Kurs jest niezwykle prosty, a zarazem merytoryczny, bardzo czytelny i zrozumiały. Czuje się, że Autor jest bardzo dobrym programistą a mimo to nie "cwaniakuje" popisując się swoją wiedzą. Dziękuję!
wiki
12 września 2010,
13:58
a ja już się poddaję, dalej nie idę, jak dla mnie jest lekko chaotyczny, już nie trawię tego, kurs napisany 5 lat temu, teraz mammy 2010r, czy nic sie nei zmieniło do tego czasu w C# i nei powinno być zaktualizowane???
nie
25 listopada 2010,
10:11
nie ten poziom :D
marco
27 listopada 2010,
0:00
Czy w pierwszym przykładzie nie mamy klasycznego wycieku pamięci? Oczywiście w tak trywialnym przykładzie to nie problem ale czemu tego uczyć? Nie lepiej było napisać tak?
KlasaPomocnicza obiekt1 = new KlasaPomocnicza();
KlasaPomocnicza obiekt2;
Krzys
1 marca 2011,
11:56
marco, jak już sygnalizujesz jakiś problem to może opisałbyś go dokładniej? Wiele osób pisze tutaj, że kurs jest kiepski, że trzeba go wywalić, a może po prostu poprawiajcie błędy, albo napiszcie swój idealny tutorial?
Tomcio
7 sierpnia 2011,
20:14
Autorowi może chodzilo o inna liczbe (wlasna), ale liczba e to w przyblizeniu 2,71, a nie 2,74:)
Dodaj swój komentarz