Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

C++ dziedziczenie klas w osobnych plikach hpp

el_beton 11 Maj 2017 19:52 597 1
  • #1 11 Maj 2017 19:52
    el_beton
    Poziom 14  

    Witam
    Proszę o pomoc bo trochę mi się zapomniało jak się w C++ tworzyło klasy dziedziczące ale tak aby każda była w osobnym pliku hpp i cpp.
    Otóż mam kod na razie nieistotne jakie są tam funkcje i mam 5 plików: main.cpp, filtr.cpp, filtr.hpp, filtrFIR.cpp i filtrFIR.hpp. Do momentu gdy mam 3 pierwsze pliki to jest ok tylko właśnie już mi nie wychodzi jak trzeba dodać klasę filtrFIR dziedzicącą po filtr które są w innych plikach. Pewnie chodzi o to co gdzie i jak zaincludować i pewnie coś z definicją jest nie tak.

    Kod: c
    Zaloguj się, aby zobaczyć kod


    Kod: c
    Zaloguj się, aby zobaczyć kod


    Kod: c
    Zaloguj się, aby zobaczyć kod


    i kolejne zapewnie błędnie zaincludowane/zadeklarowane:
    Kod: c
    Zaloguj się, aby zobaczyć kod


    Kod: c
    Zaloguj się, aby zobaczyć kod


    Proszę o pomoc jak tutaj dodać tą klasę dziedziczącą po klasie filtr i żeby była w osobnym pliku hpp i cpp.
    A i jeszcze log kompilacji:
    Code:
    Compiling project changes...
    
    --------
    - Project Filename: C:\Users\Rafal\Desktop\Nowy folder\abc\filtrfir.dev
    - Compiler Name: TDM-GCC 4.9.2 64-bit Release

    Building makefile...
    --------
    - Filename: C:\Users\Rafal\Desktop\Nowy folder\abc\Makefile.win

    Processing makefile...
    --------
    - Makefile Processor: C:\Program Files (x86)\Dev-Cpp\MinGW64\bin\mingw32-make.exe
    - Command: mingw32-make.exe -f "C:\Users\Rafal\Desktop\Nowy folder\abc\Makefile.win" all

    g++.exe -D__DEBUG__ -c main.cpp -o main.o -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/include" -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/x86_64-w64-mingw32/include" -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include" -I"C:/Program Files (x86)/Dev-Cpp/MinGW64/lib/gcc/x86_64-w64-mingw32/4.9.2/include/c++" -g3

    In file included from main.cpp:3:0:
    filtrFIR.hpp:4:7: error: 'filtrFIR' has not been declared
     class filtrFIR :: public filtr
           ^

    filtrFIR.hpp:4:19: error: expected identifier before 'public'
     class filtrFIR :: public filtr
                       ^
    filtrFIR.hpp:4:19: error: expected unqualified-id before 'public'
    main.cpp: In function 'int main()':
    main.cpp:11:2: error: 'filtrFIR' was not declared in this scope
      filtrFIR *fr = new filtrFIR;
      ^
    main.cpp:11:12: error: 'fr' was not declared in this scope
      filtrFIR *fr = new filtrFIR;
                ^
    main.cpp:11:21: error: 'filtrFIR' does not name a type
      filtrFIR *fr = new filtrFIR;
                         ^

    C:\Users\Rafal\Desktop\Nowy folder\abc\Makefile.win:28: recipe for target 'main.o' failed
    mingw32-make.exe: *** [main.o] Error 1

    0 1
  • Pomocny post
    #2 12 Maj 2017 08:54
    mi14chal
    Poziom 28  

    Kod: c
    Zaloguj się, aby zobaczyć kod

    Tutaj musi być : a nie :: stąd masz błędy

    0