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

Nienazwana klasa - funkcja na zewnątrz

Ostatnio zmodyfikowano 2013-03-11 15:53
Autor Wiadomość
Admixior
Temat założony przez niniejszego użytkownika
Nienazwana klasa - funkcja na zewnątrz
» 2013-03-09 18:27:20
Witam,
Mam klasa XYZ w nie mam nienazwaną klasę a w niej inne klasy:
C/C++
class ResultsManager
{
    /////////////////////////////////////////////////////////////////////////////////
    struct
    {
        //**************************************************
        struct School
        {
            //------------------------
            struct User
            {
                void fun();

I teraz chciałbym zdefiniować sobie funkcje fun dla klasy User na zewnątrz tych klas.
Jak mogę to zrobić? Czy się w ogóle da?

//edit: robiąc w ten sposób:
void ResultsManager::School::User::
 nie da się bo school (jak pisze) nie jest klasą(o.O) ani przestrzenią nazw.
P-77995
Mrovqa
» 2013-03-09 18:48:15
http://ideone.com/73TEdn
error: ‘struct ResultsManager::<anonymous struct>::School’ invalid; an anonymous struct can only have non-static data members [-fpermissive]
GCC daje jeszcze bardziej bezsensowne uzasadnienie. Ciekawy problem.

http://ideone.com/UUOrau
Anonimowa klasa nie może mieć żadnych innych w sobie...

Na marginesie: po co Ci coś takiego?
P-77997
Admixior
Temat założony przez niniejszego użytkownika
» 2013-03-09 18:57:06
W Visualu takie coś jest możliwe, ale problem jest dopiero z tym żeby zdefiniować funkcje na zewnątrz klasy

(Robie Gui do serwera)
P-78000
Chlorek
» 2013-03-09 19:03:47
Osobiście proponowałbym rozwiązanie problemu inaczej, bo w ten sposób pakujesz się w na prawdę gmatwaninę kodu. A wszystko da się zrobić na kilka sposobów, zapewne to co chcesz osiągnąć też.
P-78002
pekfos
» 2013-03-09 19:04:35
(Robie Gui do serwera)
Po co Ci anonimowa struktura? Na takie pytanie jesteś w stanie precyzyjnie odpowiedzieć?
Na 110% da się to zrobić bez tej struktury..
P-78003
Admixior
Temat założony przez niniejszego użytkownika
» 2013-03-09 19:14:44
Owszem da się zrobić bez tej struktury. Ta struktura owszem jest zbędna ale wizualnie ładniej wygląda (jak się koduje to widać że się edytuje ten zakres obiektów ). Struktura ta nazywa się MiniDB :) i przechowuje ogół GUI które przechowuje wszystkie ChildBoxy i ich obiekty (tj. jest wyświetlanych wiele szkół każda szkoła ma wielu uczniów).
P-78005
RazzorFlame
» 2013-03-11 15:53:55
<facepalm>
C/C++
struct JakasStruktura
{
    //scope1
    //{
    struct StrukturaScope1Nr1
    {
    };
    struct StrukturaScope1Nr2
    {
    };
    //}endScope1
   
    //scope2
    //{
    struct StrukturaScope2Nr1
    {
    };
    struct StrukturaScope2Nr2
    {
    };
    //}endScope2
   
    //scope1
    //{
    struct StrukturaScope1Nr1
    {
    };
    struct StrukturaScope1Nr2
    {
    };
    //}endScope1
    //etc
};
Jeszcze dla efektu sie fajnie tabulatorem poslużyć i jest MjOdzio.
P-78103
« 1 »
  Strona 1 z 1