Skocz do zawartości

[c++]dodawanie własnej biblioteki


Rekomendowane odpowiedzi

Opublikowano

Otóż mam taki problem, bo utworzyłem własną biblioteke options.h i włączam ją do kodu czyli #include "options.h". No i w tej bibliotece jest zmienna główna (?) (tak jak w <iostream> main()) opcje(). No i nie wiem gdzie dac int opcje(). Pomóżcie.

 

OFFTOP: Od ilu jest następna ranga?

Opublikowano

ee, gdzie kolwiek w kodzie aplikacji. zalezy w sumie co ta funkcja (bo to nie jest "zmienna glowna") robi.

Opublikowano

A mógłbyś mi wyjaśnic gdzie to mogę dac, bo niby gdziekolwiek w aplikacji, ale jednak tak nie działa.

PS: Wiem że to nie jest zmienna główna tylko ją tak nazwałem.

Opublikowano

mowie, to zalezy co ta funkcja robi..

PS. zawsze w main() sie daje z reguly

Opublikowano

No to jest to "wykrojony" kawałek kodu ( uprzedzając ewentualne pytanie: żadnych errorów nie ma w tej bibliotece), odpowiedzialny za pisanie pewnych nazw. W sumie są tam tylko if'y.

@: Konrad-GM: A co chcesz zobaczyc kod biblioteki czy samej aplikacji?

Opublikowano

heh, tak jasnej odpowiedzi dawno nie widzialem. no coz, jesli sprawa stoi tak jak mysle to zapewne chodzi o cos w rodzaju inicjacji a jak wiadomo inicjacje daje sie na logicznym poczatku kodu.

PS. radze byc bardziej dokladnym w wyjasnieniach bo nie czytamy w myslach.

PS 2. potrafisz wogole stworzyc szablon aplikacji chocby konsolowej? bo z tego co ja czytam to zdaje sie ze krotko siedzisz nad cpp.

 

EDIT: pokaz kod biblioteki. bedzie latwiej

Opublikowano

No przecież wiem, że bibliteki inicjuje się na początku kodu po przez napisanie #include <blabla>.

Taki kod jest:

#ifndef options_hpp
#define options_hpp
int opcja()
{
    #include <iostream>
    #include "console.ddt"
    using namespace ddt::console;
    using namespace std;
    cout<<"Wybierz jedną z 3 (slownie trzech) opcji"<<endl;
    cout<<"[1]Kolory"<<endl;
    cout<<"[2]Obrazki"<<endl;
    cout<<"[3]Matematyka"<<endl;
    string pisz;
    cin>>pisz;
    if (pisz=="1") /* Pierwsza opcja  - pisanie kolorow*/
    {
        clrscr();
         string kol1, kol2, kol3;
        int pkt;
        pkt = 1;
        cout<<"Wybrales pierwsza opcje"<<endl;
        textcolor(3);
        cout<<"-----Instrukcje-----"<<endl;
        textcolor(7);
        cout<<"Tutaj masz za zadanie odgadywac kolory."<<endl;
        cout<<"Na ekranie pojawi sie 15 kolorow."<<endl;
        cout<<"I masz napisac co to za kolor"<<endl;
        cout<<"Uwaga! Tam gdzie pisze, ze slowo zaczyna sie na ciemny/jasny"<<endl;
        cout<<"podaj tylko drugi czlon wyrazu."<<endl;
        textcolor(2);
        cout<<""<<endl;
        cout<<"Pierwszy kolor."<<endl;
        cin>>kol1;
        if (kol1=="zielony","zielonkawy")
        {
            textcolor(7);
            cout<<"Brawo! Dobrze napisales."<<endl;
            cout<<"Zdobywasz 1 punkt."<<endl;
            cout<<"Masz "<<pkt++<<" punktow."<<endl;
            cout<<""<<endl;
            textcolor(3);
            cout<<"Drugi kolor. Uwaga slowo zaczyna sie na ciemny."<<endl;
            cin>>kol2;
        }
                         else
        {
            textcolor(7);
            cout<<"Niestety - pomyliles sie."<<endl;
             cout<<"Tracisz swoje punkty."<<endl;
            textcolor(3);
            cin>>kol1;
        }
        if (kol2=="seledynowy")
        {
            cout<<""<<endl;
            textcolor(7);
            cout<<"Brawo! Dobrze napisales"<<endl;
            cout<<"Zdobywasz kolejny punkt punkt"<<endl;
            cout<<"Masz "<<pkt++<<" punktow"<<endl;
            cout<<""<<endl;
            textcolor(4);
            cout<<"Trzeci kolor."<<endl;
            cin>>kol3;
        }
                 else
        {
            textcolor(7);
            cout<<"Niestety - pomyliles sie."<<endl;
            cout<<"Tracisz swoje punkty."<<endl;
            textcolor(3);
            cin>>kol2;
        }
        if (kol3=="bordo","bordowy","czerwony")
        {
            cout<<""<<endl;
            textcolor(7);
            cout<<"Brawo! Dobrze napisales."<<endl;
            cout<<"Zdobywasz kolejny punkt punkt."<<endl;
            cout<<"Masz "<<pkt++<<" punktow."<<endl;
            cout<<""<<endl;
            textcolor(5);
            cout<<"Czwarty kolor."<<endl;
            cin>>kol4;
        }
                         else
        {
            textcolor(7);
            cout<<"Niestety - pomyliles sie"<<endl;
            cout<<"Tracisz swoje punkty"<<endl;
            cin>>kol3;
        }
#endif
    };

 

PS: Nie śmiejcie się z kodu, wiem, że napewno jest poręcony i niezrozumiały, ale uczę się.

Opublikowano

po pierwsze:

#include <iostream>

#include "console.ddt"

tego sie nie daje w funkcji, tylko na poczatku pliku, zupelnie jak w kodzie aplikacji includujesz na poczatku.

 

po drugie:

using namespace ddt::console;

using namespace std;

to nie ma sensu bo najpierw przestrzenia nazw jest ddt::console, a potem nagle zmieniasz na std

Opublikowano

uzywasz cos z ddt::console? nie, wiec wywal to

Opublikowano

console.ddt służy do "kolorowania" tekstu. Tak przynajmniej czytałem.

Mam taki kod:

    string pisz;
    cin>>pisz;
    int opcja();
        if (pisz=="3")
        {
        clrscr();
        string
        pkt = 0;
        cout<<"Wybrales pierwsza opcje"<<endl;
        textcolor(3);
        cout<<"-----Instrukcje-----"<<endl;
        textcolor(7);
        }

I error wystakuje na "}". Oto jego treśc:

25|error: expected `}' at end of input|

25|error: expected `}' at end of input|

||=== Build finished: 2 errors, 2 warnings ===|

Opublikowano

Właśnie oglądam kod źródłowy tejże biblioteki, używa WinApi, więc nie warto było jej wo gule ściągać, tylko własne funkcje napisać np.

Kolorowanie tekstu:

// Inicjacja
HANDLE  hConsole = GetStdHandle( STD_OUTPUT_HANDLE );

// Zmiana koloru
SetConsoleTextAttribute( hConsole, 0 - 255 );

Opublikowano

Hmm niby tak, ale jednak wolę tą biblioteke, do kolorowanie tekstu.

Pomózcie z tym:

I error wystakuje na "}". Oto jego treśc:

25|error: expected `}' at end of input|

25|error: expected `}' at end of input|

||=== Build finished: 2 errors, 2 warnings ===|

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...