Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Kurs C++ v2.0 rozdz. 16 Obsługa pliku p. Otwieranie pliku

Ostatnio zmodyfikowano 2010-10-12 13:41
Autor Wiadomość
marek
Temat założony przez niniejszego użytkownika
» 2010-10-11 21:25:11
Dzięki Pekfos
Wiem teraz mniej więcej, co biega.

Nie byłoby problemu gdyby autor wcale nie pisał tego
void open( const char * nazwa_pliku, ios_base::openmode tryb_otwarcia_pliku )


Tylko napisał że jak chcesz żeby coś co jest na dysku, a nazywa się "nazwa_pliku.txt" zaczęło się przepisywać do zmiennej plikowej "plik", należy użyć takiej instrukcji.
plik.open( "nazwa_pliku.txt", std::ios::in | std::ios::out );

A dokładnie co to oznacza to dowiemy się później przy klasach i obiektach.
P-22734
kamillo121
» 2010-10-11 21:40:40
Autor kursu bardzo dobrze to napisał, to nie jest kurs dla upośledzonych i warto wiedzieć z czego się składa dana funkcja/metoda, jakie argumenty itd (nawet wyprzedzając aktualny stan wiedzy a kolejne rozdziały), nie można pewnych rzeczy zapisywać tak jakbyś tłumaczył zagadnienia małym dzieciom :)

Zapis prosty, krótki odpowiadający nawet wymagającym (żyć nie umierać :)).


/edit
Jeżeli mi nie wierzysz z tym wyprzedzaniem materiału to przeczytaj sobie książkę Bjarne o c++ to zobaczysz jak tam jest pisane(co prawda autor zakłada podstawową umiejętność programowania ale nie w tym rzecz)
P-22736
marek
Temat założony przez niniejszego użytkownika
» 2010-10-12 10:57:23
Kamillo 121
Nie bardzo zgadzam się z Tobą, co do wyprzedzania materiału. Można to robić, o ile nie ma innego wyjścia. Wyobraź sobie, że jesteś w szkole średniej. Poznajesz funkcję kwadratową a nauczyciel bada jej przebieg wykorzystując rachunek różniczkowy. Dla osoby która zna pochodne, jest to najwygodniejsze. A dla innych nie. Trzeba to sprowadzić do postaci kanonicznej... itd.
Ja sporo nagłówkowałem się szukając korelacji między open(), a plik.open(). W końcu musiałem przyjąć na wiarę że jak napiszę plik.open() to ... itd. Potem sprawdziłem, że to działa. Dobrze że jest forum, i powiedziano mi że plik.open() jest z innej bajki.
Dlatego uważam, że definicja open() tylko gmatwa i nie powinna być tu przytaczana. Dla Ciebie plik.open() i open() to są klocki lego, które do siebie pasują. Dla mnie nie.
P-22742
kamillo121
» 2010-10-12 13:41:27
Marku co do przytoczonego przykładu z lekcji matematyki to zgadzam się z tobą, ale teraz skupmy się na samym programowaniu:
Jeżeli autor od początku wyprzedza nieco temat powoli i półświadomie wprowadzając cię do tematu o wyższym stopniu trudności to jest to dobre, jak wiadomo w c++ działamy głownie na obiektach, zmienna plikowa, przez którą masz dostęp do pliku jest obiektem. Teraz jak masz temat np. Pliki to wiadomo, że wszystkie metody dotyczyć będą danego obiektu(w tym wypadku uchwytu do pliku) więc wynika też, że musisz jej użyć na obiekcie. Mówisz, że programowanie obiektowe jest dalej i nie powinno się o nie zahaczać, ale przecież od początku działasz na obiektach więc jest to nieuniknione i lepiej, że  autor tłumaczył to tak a nie przeszedł do programowania zorientowanego obiektowo a potem powrócił do obsługi plików(wiadomo może dodać iż metoda działa na obiektach tego typu itd autor powinien po prostu o tym wspomnieć).


/oczywiście nie mówię tego w formie kłótni :)
P-22746
1 « 2 »
Poprzednia strona Strona 2 z 2