Mein erste C# Tag!!!



  • moinz leute also ich hab da gleich mehrere fragen *g

    also ich möchte gerne anstatt System.Console einfach C schreiben

    using System;
    using C = Console;
    // geht nicht !!!!
    
    //aber ...
    using C = System.Console
    

    geht, okay ist zwar einfacher aber warum geht das obere nicht ? muss
    der "pfad" da immer absolut sein auch wenn man sowieso schon namespaces geöffnet hat??? 😕

    Außerdem warum muss

    using blabla
    

    immer zuerst stehen also, ich möchte einen namespace erstellen und ihn dann öffnen zum benutzen...

    namespace a {...}
           using a;
    

    doch das geht nicht, aber das geile wenn ich die anweisungen umdrehe geht es ohne probs, doch wie soll er einen namespace öffnen ohne ihn vorher überhaupt zu kennen ??? 😮
    🙄

    naja hoffe ihr könnt mir helfen 🕶



  • achso, also das problem zwei da arbeite ich natürlich nur in einer datei,
    achso hab noch was gelesen im buch..aber konnte bisher nicht feststellen das es nicht geht...

    Also es steht da:

    Bedingung für dsa Zusammenfassen von Namensräumen ist , das im außen liegenden Namensraum keine Typen definert sind. Nur im innersten dürfen Elemente vorhanden sein

    ich raff das nicht ganz 😡



  • C# benötigt keine Voraus-Deklaration, soweit ich weiß.



  • ähm anders würde er den namesraum doch nicht bentutzen oder macht er das automatisch in dieser datei????



  • aha keine antwort, also habt ihr wohl auch selber keine ahnung davon höhö

    😃 :p

    🙄 🕶



  • Original erstellt von Erhard Henkes:
    C# benötigt keine Voraus-Deklaration, soweit ich weiß.

    Das ist richtig:

    using A;

    using B;

    namespace A

    {

    }

    namespace B

    {

    }[/code]

    @<PaFF>: Wo ist da dein Problem? Du kannst jetzt in A und B jeweils auf die Klassen zugreifen.

    Und bei dem hier:

    using C = Console;

    vs.

    using C = System.Console

    Was ist denn wenn du in deinem eigenen Namensraum auch eine Klasse Console implemtiert hast? Woher soll der Compiler denn wissen welchen du meinst?



  • ja es benötigt keine voraus...aber muss ja auch alle using vor dem definieren neuer namespaces schreiben , sehe ich das richtig ????
    🙄



  • Ja, das siehtst du richtig.



  • das ist ja witzlos wenn ich erst ein using mache von einem namespace denn ich ja noch garnicht definiert habe, naja okay ich nehms hin 😃

    und noch eine frage :
    wozu sind initi's bei klassenmembern gut

    class A
    {
       int test = 3;
       A() { test = 4; }
    }
    

    ?
    also ich meine genau für die default init's sind doch die konstruktoren da, also wieso dann noch so eine möglichkeit ??? 😕



  • Das macht dann Sinn, wenn du mehrere Konstruktoren hast und in jedem deine Variable test auf 3 setzen willst. Du müsstest beim Ändern des Initialwertes dann nur noch an einer Stelle was ändern.


Anmelden zum Antworten