Skocz do zawartości

DevPort

Super użytkownicy
  • Zawartość

    187
  • Rejestracja

  • Ostatnio

Reputacja

0 Neutralny

2 obserwujących

O DevPort

  • Ranga
    Pomocna dłoń

Ostatnio na profilu byli

5048 wyświetleń profilu
  1. DevPort

    Unit1.pl jakie plany ?

    Przykładowe opcje. 1.Uporządkowanie serwisu na nowo ( stary układ bloków na stronie głównej), opracowanie nowych działów bardziej intuicyjnych. 2.Skupienie się na poprawie działania serwisu (obecnie nie widzę np. możliwości dodawania, proponowania nowych artykułów). 3.Po wszelkich poprawkach można równolegle tworzyć własny zamknięty CMS'a pod serwis, krok po kroku... 4.W międzyczasie staranie się o dodawanie treści i tu należy się zastanowić nad tematyką: 4.1 Serwis ogólny opowiadający o różnych językach: C/C++, PASCAL, PHP itp. 4.2 Skupienie się na dwóch językach C++/Delphi 4.3 Skupienie się na jednym konkretnym języku (wg nazwy serwisu należałoby wybrać Delphi jako wiodący język) Wszystko to wymaga dużego wkładu własnej pracy i zaparcia. Należy jednak traktować całość jako hobbystyczne zajęcie w czasie kiedy się nudzimy Wszelka krytyka mile widziana.
  2. DevPort

    Unit1.pl jakie plany ?

    Wybacz... faktycznie był stary nie używany Już jest poprawny. Sam programuję lecz w C pod ARM w kierunku elektroniki (hobbystycznie) lub w Free Pascall projekty konsolowe. Obecnie próbuję przesiąść się na Ubuntu i uczę się C/GTK+. Sercem bliżej mi do FPC, praktyką do C. Może i Delphi jest nie popularne jednak tworzenie wortalu z nazwą domeny biorącą się z tego języka, a przeznaczeniem ogólnym lub pod C/C++ mija się z celem. Światkami tego mijania jesteśmy w obecnej chwili. Jeżeli chodzi o mnie to regularnie wskakuję na tą stronkę kilka razy w tyg.. Istnieją strony ukierunkowane na daną technologię C++/Pascal/Assember kolejno: C++0x.pl / pps4s.co.uk / nevar.pl Napisz do mnie teraz to pogadamy.
  3. DevPort

    Unit1.pl jakie plany ?

    A może czas wrócić do korzeni z tym serwisem ? Mogę się narazić innym, jednak zdania jestem, że należałoby podjąć jakieś decyzje na temat istnienia wortalu. 1. Zamknąć 2. Trzymać dalej w obecnej formie 3. Skupić się na jednej technologii / języku (C/C++ lub wracając do korzeni na Delphi/FPC) Nakiel pisz do mnie na email. Jeżeli nie masz ochoty tego utrzymywać to tym bardziej się do mnie odezwij.
  4. DevPort

    Unit1.pl jakie plany ?

    Aż tak kiepsko? Ps ile to Ciebie kosztuje utrzymanie tego serwisu?
  5. DevPort

    Unit1.pl jakie plany ?

    Jak widzę, unit stoi osamotniony, czasami jakiś elektron napisze posta aby mu pomóc. Samo forum sypie się z po edycji czegokolwiek... Można jakoś temu zaradzić ? Można jakoś unit pomóc ? Nakiel potrzebujesz pomocy by coś z tym serwisem zrobić to pisz, może się coś zdziała. Pozdrawiam.
  6. DevPort

    C Pointer na funkcję i funkcja time_t

    Nie wiem w czym masz problem, mnie to działa. Pamiętaj, że -> int i;(*zeit)(i); i - nie zawiera konkretnej wartości, równie dobrze może zawierać wartość 0 lub jakąś śmieciową z pamięci. Mi dopiero przy wartości 100000000 czas wykonania funkcji trwał dłużej jak 1 s
  7. DevPort

    Problem KeyUp

    Nie da się zmienić kodu klawisza, który ma zostać dodany do zawartości memo w innych funkcjach jak KeyPress. W Twoim wypadku do KeyPress wstaw: if not (Key in ['0'..'9', #8] ) then begin Key := #0; if Memo1.Lines.text <> '' then Label1.Caption := IntToStr(StrToInt(Memo1.Lines.text)); end; Nie wiem czy o to chodziło... ;] Ps. Gdy w KeyPress robisz taki warunek to pamiętaj, aby obsługiwać wszelkie klawisze np Backspace = #8, aby móc później kasować zawartość Memo czy edit'a
  8. DevPort

    klasy

    A to wybacz proszę :] Tak działa wszystko tak jak powinno, wystarczyło wspomnieć, że to ma być prototyp. A o prototypach w C++ zapomniałem. A średniki nie zauważyłem przy pisaniu, w pliku AClass.cpp jest nadmiar przy metodach getBClass() i getCClass(). Kod na szybko pisany. Dzięki za pomoc. Pozdrawiam.
  9. DevPort

    klasy

    Z poprzednich Twoich wypowiedzi napisałeś: class A; class C { ... więc to jest zamiast "class A;" Sam to zaproponowałeś. Ps. średniki są na zakończenie instrukcji, co w tym złego? I proszę napisz gdzie widzisz nadmiar średników ?
  10. DevPort

    klasy

    OK, dam przykład który wywala w konstruktorze klasy w pliku AClass.cpp z komunikatem: this->bClass = new BClass(this); A to całość: main.cpp #include "AClass.h" int main() { AClass* aClass = new AClass; delete aClass; } AClass.h #ifndef ACLASS_H #define ACLASS_H #include "BClass.h" #include "CClass.h" class AClass { public: AClass(); virtual ~AClass(); BClass* getBClass(); CClass* getCClass(); protected: private: BClass* bClass; CClass* cClass; }; #endif // ACLASS_H AClass.cpp #include "AClass.h" AClass::AClass() { this->bClass = new BClass(this); this->cClass = new CClass(this); } AClass::~AClass() { //dtor } BClass* AClass::getBClass(); { return this->bClass; } Class* AClass::getCClass(); { return this->cClass; } BClass.h #ifndef BCLASS_H #define BCLASS_H class pAClass; class BClass { public: BClass(pAClass* _AClass_); virtual ~BClass(); void testFunction(); protected: private: pAClass* _aClass; }; #endif // BCLASS_H BClass.cpp #include "AClass.h" BClass::BClass(pAClass* _AClass_) :_aClass(_AClass_) { // this->_aClass = _AClass_; /\ UP /\ } BClass::~BClass() { //dtor } void BClass::testFunction() { std::cout << "test Function message"; } CClass.h #ifndef CCLASS_H #define CCLASS_H class pAClass; class CClass { public: CClass(pAClass* _AClass_); virtual ~CClass(); protected: private: pAClass* _aClass; }; #endif // CCLASS_H CClass.cpp #include "AClass.h" CClass::CClass(pAClass* _AClass_) :_aClass(_AClass_) { // this->_aClass = _AClass_; /\ UP /\ AClass* myClass = static_cast<AClass>(this->_aClass); myClass->getBClass()->testFunction(); } CClass::~CClass() { //dtor } To oczywiście przykład kodu zmodyfikowany na potrzeby metody "po Twojemu" Moja wiedza na temat C++ nie jest wielka więc miło będzie się czegoś dowiedzieć Pozdrawiam.
  11. DevPort

    Jak odkodować skrypt

    Nie podałeś ni cienia informacji od czego to, co tu może być... Dekodowanie tego może zająć dużo czasu jak się kompletnie nie wie co tam może być. Czy to jakieś dane dotyczące bankowości elektronicznej?
  12. DevPort

    klasy

    Testowałeś to ? Możesz podać działający przykład? Albo nie umiem i nie działa, albo gdzieś popełniłeś błąd. Cel to dostęp do klasy, która nas (klasę) stworzyła. Czyli w plikach nagłówkowych klas: B i C nie mogę dołączać pliku nagłówkowego klasy A, ponieważ jej plik nagłówkowy dołącza pliki nagłówkowe klas B i C. Czyli w tych plikach nie dam rady stworzyć zmiennej wskaźnikowej na klasę A. A chcę wykorzystać właśnie funkcje tej klasy. Więc potrzebna mi jej instancja klasy A wewnątrz klas B i C. Odnośnie tego co mi napisałeś kodu to kompilator wypluwa mi błąd przy tworzeniu obiektu C: c = new C(this); odnośnie "Braku dopasowania funkcji dla wywołania C::C(A* const); " rozumiem, że konwersję można spróbować zrobić ale też mi to nie chce działać. Natomiast co do samego wskaźnika, to można w sekcji prywatnej klasy C stworzyć wskaźnik np. "void* baseClass;" i w konstruktorze przypisać: this->baseClass = base; po czym każdorazowe użycie dostępu do nadklasy wiąże się z takową wiązanką kodu: A* aClass = static_cast<A>(this->baseClass); // aClass->b->test(); co można w prywatną funkcję obudować.
  13. DevPort

    klasy

    Dobra miałem pewien problem ze strony kompilatora C++ struktura klas: class A { public: A(){ b = new B; c = new C;} B* b; C* c; }; Teraz magiczne zdanie: Chciałem dostać się z klasy B do klasy C. Główkowałem cały dzień jak to zrobić, kombinowałem z interfejsami (w delphi/fpc to nie problem) ale poległem. Przyszedł mi jednak pewien pomysł na rozwiązanie problemu. Przekazanie instancji klasy A do pozostałych klas czyli B i C przez konstruktor. Czyli tu mamy błędny kod: B::B(A* base) { } C::C(A* base) { } Ponieważ musimy do plików nagłówkowych klas B i C dołączyć plik nagłówkowy klasy A który zawiera w sobie dołączone pliki nagłówkowe klas B i C. Więc jak? W ukochanym Object Pascalu mamy wskaźnik niejawny : Pointer; 4 bajtowy. W C++ odpowiednikiem jest "void* zmienna;" Ta, wielu więc napisze: to proste więc zamieńmy w konstruktorach A* na void* i po sprawie... Ne ne ne Kompilatorek wywali błąd konwersji I tu szczena mi opadła Ale coś musi być, aby to działało i jest: static_cast więc tak piszę w/g plików: "a.h" #include "B.h" #include "C.h" class A { public: A(); B* b; C* c; } "a.cpp" #include "A.h" A::A() { b = new B(this); c = new C(this); } Teraz pliki pozostałych klas: "b.h" class B { public: B( void* base); } "b.cpp" #include "B.h" #include "A.h" A* mA; B::B(void* base) { mA = static_cast<A*>(base); } "c.h" class C { public: C( void* base); void test(); } "c.cpp" #include "C.h" #include "A.h" #include <iostream> A* mA; C::C(void* base) { mA = static_cast<A*>(base); } void C::test() { std::cout << "Witaj świecie \n"; } Teraz w metodach klasy B możemy używać zapisu: mA->c->test(); Komuś może się przydać taka konstrukcja kodu.
  14. DevPort

    Do czego służą stałe w Pascalu?

    Stałe w językach programowania (między innymi w Pascalu) składają się z : Identyfikator = wartość; (Identyfikator) (znaku przypisania "=" ) (wartości którą reprezentować będzie identyfikator) Tłumaczyć można to tak: Identyfikator przyjmuje wartość. Jeżeli użyjesz w programie danego identyfikatora, to będzie to to samo co użycie zamiast indentyfikatora bezpośrednio wartości. program test const wiek = 28; begin write('Jan ma ', wiek, ' lat'); end; Ten program bez użycia stałych można zapisać tak: program test begin write('Jan ma ', 28, ' lat'); // lub pominąc całkowiecie wstawianie wartości typu int; end; Oba programy dadzą wynik: Jan ma 28 lat Pozdrawiam
  15. DevPort

    Wartości stałe const - zaczęłam naukę

    po słowie const wypisujesz nazwy stałych i przypisujesz im wartości. abc = 500; bcd = 400; po użyciu w programie abc i bcd w tych miejscach będą wartości tych nazw stałych. program test; const abc = 500; // przypisanie nazwie abc wartosci 500 bcd = 400; // analogicznie wartosci 400 var a : integer; // zadeklarowanie zmiennej typu integer (liczbowy bez przecika) begin a := abc + bcd; // dodanie do siebie dwóch stałych i przypisanie ich do zmiennej 'a' write(a); //wypisanie wyniku na ekran (tu wartości 900) end; Mam nadzieję, że pomogłem.
×