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

[Funkcje] Zmienne w funkcji main dostępne w innych funkcjach.

Ostatnio zmodyfikowano 2012-07-17 10:21
Autor Wiadomość
sinoo
Temat założony przez niniejszego użytkownika
[Funkcje] Zmienne w funkcji main dostępne w innych funkcjach.
» 2012-06-25 18:49:47
Witam,
Mam mały problemik. Otóż chciałbym sprawić, aby zmienne zadeklarowane w funkcji głównej "main" były dostępne w wybranej innej funkcji i na odwrót - by zmienne zadeklarowane w funkcji własnej były dostępne w funkcji głównej.
Oto kod funkcji:

C/C++
int AppDrawBG()
{
    for( n = 1; n = 211; n++ )
    {
        oknoApp.Draw( BackGround[ n - 1 ] );
    }
}

Kod napisany z wykorzystaniem biblioteki SFML. Zmienne "n", "BackGround[211]" i oknoApp zostały zadeklarowane w głównej zmiennej "main" i chciałbym bez większych przeszkód korzystać z nich i zmieniać ich wartość z poziomu funkcji, zmieniając tym samym wartość tych zmiennych w głównej funkcji.
P-59096
Vallher
» 2012-06-25 18:54:05
Z mainu do funkcji - wskaźniki lub przez referencje, masz w kursach.

W drugą stronę, też się da ale chyba tylko w kodzie sobie namotasz.
P-59097
anonim
» 2012-06-25 18:57:48
może zmienne globalne?
Robisz zmienną poza klamrami i możesz z niej korzystać gdzie chcesz - i w funkcjach i w main'ie
np:
C/C++
#include <iostream>

int zmiennaGlobalna = 100;

int f()
{
    //tu twoja funkcja
}
int main()
{
    // a tu main
}
P-59098
Vallher
» 2012-06-25 19:00:24
Wtedy będą we wszystkich, a nie w wybranych, a chyba nie o to chodzi.
P-59099
sinoo
Temat założony przez niniejszego użytkownika
» 2012-06-25 22:26:18
A czy istnieje możliwość podmiany kodu w czasie kompilowania przez kompilator? Funkcje wykorzystuję głównie po to by nie robić syfu w kodzie, a więc konkretnie wystarczyłoby mi takie rozwiązanie. Może istnieje jakiś specjalny rodzaj funkcji, który wyłącznie zastępuje kod podczas kompilacji programu bez traktowania jej jako osobną część programu, w której wykorzystywane są osobne zmienne.
P-59114
DejaVu
» 2012-06-25 22:33:49
Klasy i metody wirtualne. Możesz zdefiniować wówczas ogólny interfejs obsługi obiektu, a klasy potomne dziedziczyłyby po interfejsie i posiadały własną implementację metod.

/edit:
No ale po treści tematu wnioskuję, że nie masz dobrze opanowanych jeszcze funkcji więc na chwilę obecną metody wirtualne będą dla Ciebie abstrakcją.
P-59115
sinoo
Temat założony przez niniejszego użytkownika
» 2012-06-26 14:32:58
Te metody wirtualne mogą mnie rzeczywiście poratować, ale czy można używać ich jakoś poza klasami?
P-59143
DejaVu
» 2012-06-26 15:30:24
Alternatywa: » Kurs C++ » Poziom XWskaźnik na funkcję lekcja.
P-59150
« 1 » 2
  Strona 1 z 2 Następna strona