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++] Jak wyciągnać funkcje poza funkcje

czytelnik987 25 Gru 2011 21:01 1538 9
  • #1 25 Gru 2011 21:01
    czytelnik987
    Poziom 9  

    Witam, jestem bardzo początkujący i mam problem ponieważ kompilator pokazuje mi błąd, że nie mogę definiować funkcji w funkcji (błąd C2601 local function...).
    Kombinuje jak wyciągnąć tę funkcję poza funkcje ale mi nie wychodzi. Mógłby mi ktoś pomóc?

    Kod: cpp
    Zaloguj się, aby zobaczyć kod


    Dziękuję i pozdrawiam.

    0 9
  • #2 25 Gru 2011 21:05
    mietekn
    Poziom 35  

    Spróbuj dodać na początku programu linie: #include <math.h>

    0
  • #3 25 Gru 2011 21:21
    czytelnik987
    Poziom 9  

    Mam to dodane. Mam też:

    Kod: cpp
    Zaloguj się, aby zobaczyć kod


    Nic to nie pomaga, dalej jest ten błąd.

    0
  • #5 26 Gru 2011 10:27
    czytelnik987
    Poziom 9  

    Kod: cpp
    Zaloguj się, aby zobaczyć kod


    Tam gdzie wstawiłem (...) tam jest kod kompilatora, ponieważ piszę w MS Visual 2008.
    Podałem tutaj przykładowy kod, gdyż kompilator pokazuje mi błędy na każdym wpisie który wygląda podobnie jak ten:
    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    0
  • #6 26 Gru 2011 10:37
    beluosus
    Poziom 25  

    Nadal nie pokazałeś całego kodu, a to jednak może być istotne. Po prostu przenieś wewnętrzną funkcję na zewnątrz.

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    I tyle. Sprawdź jeszcze czy wszystkie nawiasy {} są sparowane.

    0
  • #7 26 Gru 2011 16:02
    czytelnik987
    Poziom 9  

    Właśnie mam problem z przeniesieniem tych funkcji na zewnątrz, bo wg mnie nie mam ich opisanych wewnątrz żadnej funkcji.

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    Piszę w MS Visual 2008 ale nie w konsoli tylko w Windows Forms Application i tego zmienić nie mogę.

    0
  • #8 26 Gru 2011 16:10
    beluosus
    Poziom 25  

    Masz jak byk, że są one w funkcji groupBox1_Enter. Wywal je nie tylko poza funkcję, ale poza zakres klasy i poza przestrzeń nazw.

    0
  • #9 26 Gru 2011 16:50
    czytelnik987
    Poziom 9  

    Nie mogę tego wywalić bo jak będę uruchamiał to co napisałem? Musze mieć coś od czego będę zaczynał.
    Nawet kiedy wpisałem ten kod w konsole (teraz piszę w Windows Forms Application) to wyskakiwał mi ten sam błąd.

    0
  • #10 26 Gru 2011 17:20
    beluosus
    Poziom 25  

    Dopiero teraz zauważyłem resztę kodu... Nawet nie wiem od czego zacząć. W każdym razie Ty zacznij od czytania jakiejś książki/kursu o podstawach WFA.
    Po pierwsze: niemożliwe jest zagnieżdżenie funkcji i już. Musisz posłuchać poprzedniej rady. I nie mówię o wywalaniu tylko o przeniesieniu.
    Po drugie: w projekcie musisz już mieć funkcję main, która dopiero tworzy i pokazuje Twoje okienko.
    Po trzecie: robisz aplikację okienkową, a korzystasz z cout... zdecyduj się. Chyba nie myślisz, że to wszystko wyświetli się w GroupBoksie, który wstawiłeś na formatkę?
    Stwórz nowy projekt i rób krok po kroku rzeczy, które działają, a nie copy-paste i myślisz, że zadziała.

    0