WinFuture-Forum.de: C# - Woher? - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 5 Seiten +
  • 1
  • 2
  • 3
  • 4
  • 5

C# - Woher?

#31 Mitglied ist offline   Schwabi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.769
  • Beigetreten: 27. November 05
  • Reputation: 0
  • Wohnort:Walding, Österreich

geschrieben 11. Januar 2006 - 16:06

Hi, hab mir grad die tutorials angesehen, und tja.
kapitel 1-3 hab ich gelesen, is ja mächtig viel. dann in kapitel 4 gehts los, und ich weis garnichts.

Wenn ich nun visual c# express öffne und etwas neues anfangen will, fragt er mich was ich machen will.

da wären windowsapplication , console application usw.

Ich als blutiger anfänger hab natürlich keinen plan, was ich machen soll!

kann mir jemand ein tutorial zeigen, das überhaupt nichts vorraussetzt?
0

Anzeige



#32 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.505
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 11. Januar 2006 - 16:09

Zitat

Was ist Mehrfachmethodendispatch?

class x {
  void blah() {}
}

class y {
  void blah(){ System.Console.println("blah"); }
}

class a : x,y {
  public static void main(String[] args) {
	blah();
  }
}


Da zuerst von x vererbt wurde, wird die blah-Funktion von x aufgerufen. Hätte ich zuerst von y vererbt, dann würde die blah-Funktion von y aufgerufen. Generell wird der Klassenableitungsbaum von unten nach oben, links nach rechts traversiert, bis eine passende Methode gefunden wird. Sorgt für so manche häßliche Überrauschung.
Und natürlich versaut es die Typisierung, da eine Klasse mehrere nicht geordnete Oberklassen haben kann.

Zitat

StringList gibts in C# nicht, nur in Delphi

OK, dann war's halt eine andere der Spezialized Collections mit Strings. Die sind generell alle auf benannte Weise typfremd. Und Typassoziationen kennen die auch nicht, d.h. eine List<Y extends X> ist keine Oberklasse von List<X>.

Dieser Beitrag wurde von Rika bearbeitet: 11. Januar 2006 - 16:12

Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#33 _MagicAndre1981_

  • Gruppe: Gäste

geschrieben 11. Januar 2006 - 16:38

@Rika

sowas wie du das da geschrieben hast geht in C# nicht ;-) Eine Klasse kann in C# nicht mehrere Basisklassen haben.

Was mienst du mit dem zweiten?

Generics gibts erst ab .net 2.0. In .NET 1.x gabs immer eine boxing und unboxing bei collections.
0

#34 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.505
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 11. Januar 2006 - 20:48

Zitat

sowas wie du das da geschrieben hast geht in C# nicht ;-) Eine Klasse kann in C# nicht mehrere Basisklassen haben.

Laut Spezifikation schon, und die LINQ Preview implementiert er auch. dotGnu kann's ebenfalls.
Naja, war wohl etwas zu sehr auf C++ fixiert.

Zitat

Was mienst du mit dem zweiten? Generics gibts erst ab .net 2.0

Darauf bezog es sich ja auch. OK, hab gerade mal gefrickelt:

using System.Collections.Generic;
using System.Collections.Spezialized;
Dictionary<String,String> dictionary = new StringDictionary(); //ERROR
Dictionary<String,String> dictionary = new StringDictionary<String,String>(); //ERROR
Dictionary dictionary = new StringDictionary(); //ERROR
System.Collections.Dictionary dictionary = new StringDictionary(); // das geht


Und System.Collections.Generic.Spezialized gibt's auch nicht. Totaler Murks, durch das ständige Casten ist der ganze Performance-Vorteil wieder dahin.

Dieser Beitrag wurde von Rika bearbeitet: 11. Januar 2006 - 20:50

Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#35 _MagicAndre1981_

  • Gruppe: Gäste

geschrieben 11. Januar 2006 - 22:08

 Zitat (Rika: 11.01.2006, 20:48)

Laut Spezifikation schon, und die LINQ Preview implementiert er auch. dotGnu kann's ebenfalls.


Hääh? Habs nochmal mit dem VS2005 probiert (du hast mich total verwirrt) und da gehts nicht!

 Zitat (Rika: 11.01.2006, 20:48)

Naja, war wohl etwas zu sehr auf C++ fixiert.


Bei C++ ist das ja auch so.

 Zitat (Rika: 11.01.2006, 20:48)

Und System.Collections.Generic.Spezialized gibt's auch nicht.


:D Gibts sowas in JAVA 1.5? Was ist das genau?
0

#36 Mitglied ist offline   Rika 

  • Gruppe: aktive Mitglieder
  • Beiträge: 11.505
  • Beigetreten: 11. Juni 03
  • Reputation: 2
  • Geschlecht:Männlich

geschrieben 11. Januar 2006 - 23:16

Zitat

Gibts sowas in JAVA 1.5?

Jein. So etwas wird teilweise intern verwendet, z.B. bei der WeakHashMap<K,V>, welche intern ein keySet der Form Set<WeakReference<K>,V> verwendet.

Zitat

Was ist das genau?

Das wäre vermutlich der korrekte Namespace für spezialisierte Collections, die Generics unterstützen.
Sprich: Spezialisierte Collections, deren Performance-Vorteile man auch wirklich nutzen kann.
Konnichiwa. Manga wo shitte masu ka? Iie? Gomenne, sonoyouna koto ga tabitabi arimasu. Mangaka ojousan nihongo doujinshi desu wa 'Clamp X', 'Ayashi no Ceres', 'Card Captor Sakura', 'Tsubasa', 'Chobits', 'Sakura Taisen', 'Inuyasha' wo 'Ah! Megamisama'. Hai, mangaka gozaimashita desu ni yuujin yori.
Eingefügtes Bild
Ja, mata ne!

(For sending email please use OpenPGP encryption and signing. KeyID: 0xA0E28D18)
0

#37 Mitglied ist offline   Schwabi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.769
  • Beigetreten: 27. November 05
  • Reputation: 0
  • Wohnort:Walding, Österreich

geschrieben 12. Januar 2006 - 17:01

Hi nochmal,

Hab jezt schon alles was ich brauche und auch schon einen mini-programm geschrieben.

Wie compiliere ich nun diese datei?

Da steht irgendwas von: ich soll in einem DOS-fenster in das verzeichnis wechseln wo die datei gespeichert ist, und dann csc ErstesProgramm.cs eingeben.

ist das richtig so?

ich kann gar nicht in "C:\Dokumente und Einstellungen\Andi\Eigene Dateien\Visual Studio 2005" wechseln.



Was mache ich falsch?
0

#38 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.686
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 12. Januar 2006 - 17:31

Wenn du Visual Studio benutzt und danach sieht es aus, dann musst du "nur" F5 drücken...
0

#39 Mitglied ist offline   Schwabi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.769
  • Beigetreten: 27. November 05
  • Reputation: 0
  • Wohnort:Walding, Österreich

geschrieben 12. Januar 2006 - 17:45

mann mann, is ja alles so einfach, nur komm ich nicht drauf!

danke!! Ich hab auch schon mit jemanden gesprochen, und der sagte ich solle mir das .net framework SDK 2.0 herunterladen. Dies hab ich auch gemacht.

Wöfür brauche ich das nun?



EDIT: Ich habs gerade versucht, das mit F5, aber da tut sich nix. Und wenn sich vielleicht doch was getan hat, wo ist dann die fertige datei hin?

Nochmal EDIT:

ist dies überhaupt richtig?

public class ErstesProgramm
{
public static void Main()
{
System.Console.WriteLine("Mein erstes C#-Programm!");
}
}

Dieser Beitrag wurde von schwabi bearbeitet: 12. Januar 2006 - 17:59

0

#40 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.686
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 12. Januar 2006 - 18:26

Also für's Debuggen ist es F5 und ohne Strg+F5
Alternativ über das Menü Debuggen -> ...

Die Dateien liegen im Unterordner bin und dort entweder unter Debug oder Release.

IM SDK sind ein paar nette Beispiele und Tutorials, aus denen du bestimmt was lernen kannst. Ansonsten halt die Dokumentation, die aber automatisch in Visual Studio "enthalten" ist (F1).
0

#41 Mitglied ist offline   Schwabi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.769
  • Beigetreten: 27. November 05
  • Reputation: 0
  • Wohnort:Walding, Österreich

geschrieben 12. Januar 2006 - 18:28

Ist debuggen=compilieren?

Da sehe ich gerade, dass unter debuggen, debuggen starten grau da steht, und nicht anklickbar ist!

Kann es sein, dass ich irgendwo nen blödsinn geschrieben habe?


Meine letzte frage(hoffentlich):

Wenn ich visual C# starte und ein neues prjekt machen will, dann kann ich zwischen windows application, class library, empty project usw. wählen. Was ist nun das richtige?



Das mit dem debuggen hat sich erledigt, aber er sagt fehler.

so sehen die fehler aus:

Error 1 'WindowsApplication1.Form1.Dispose(bool)': no suitable method found to override C:\Dokumente und Einstellungen\Andi\Lokale Einstellungen\Anwendungsdaten\Temporary Projects\WindowsApplication1\Form1.Designer.cs 14 33 WindowsApplication1


Error 2 Program 'C:\Dokumente und Einstellungen\Andi\Lokale Einstellungen\Anwendungsdaten\Temporary Projects\WindowsApplication1\obj\Debug\WindowsApplication1.exe' has more than one entry point defined: 'ErstesProgramm.Main()' C:\Dokumente und Einstellungen\Andi\Lokale Einstellungen\Anwendungsdaten\Temporary Projects\WindowsApplication1\Form1.cs 3 24 WindowsApplication1


Error 3 Program 'C:\Dokumente und Einstellungen\Andi\Lokale Einstellungen\Anwendungsdaten\Temporary Projects\WindowsApplication1\obj\Debug\WindowsApplication1.exe' has more than one entry point defined: 'WindowsApplication1.Program.Main()' C:\Dokumente und Einstellungen\Andi\Lokale Einstellungen\Anwendungsdaten\Temporary Projects\WindowsApplication1\Program.cs 13 21 WindowsApplication1

Dieser Beitrag wurde von schwabi bearbeitet: 12. Januar 2006 - 18:38

0

#42 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.686
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 12. Januar 2006 - 18:43

Windows Application ist eine Anwendung mit einer Windows-Oberfläche (Fenster, GUI)

Class Library ist eine DLL

Empty Project ist, tja wie der Name schon sagt, ein leeres Projekt.

An den Fehlermeldungen kannst du erkennen, dass du versucht hast eine Windows Application zu erstellen.
An deiner Stelle würde ich davon erstmal die Finger lassen. Erst wenn du verstanden hast, wie man Konsolenprogramme schreibt...

Nehm am besten zuerst ein leeres Projekt und erstelle dir dort eine neue Klasse und füge den Code von oben ein...
0

#43 Mitglied ist offline   Schwabi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.769
  • Beigetreten: 27. November 05
  • Reputation: 0
  • Wohnort:Walding, Österreich

geschrieben 12. Januar 2006 - 18:45

Ok ich probiers mal.

Ach übrigens -----> danke für deine geduld! ;)
0

#44 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.686
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 12. Januar 2006 - 18:46

 Zitat (schwabi: 12.01.2006, 18:45)

Ach übrigens -----> danke für deine geduld! ;)


passt schon, hab gerade sonst nichts zu tun ;)
0

#45 Mitglied ist offline   Schwabi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.769
  • Beigetreten: 27. November 05
  • Reputation: 0
  • Wohnort:Walding, Österreich

geschrieben 12. Januar 2006 - 18:53

Na dann ist ja in ordnug, den hier das nächste:

Hab also eine empty project geöffnet. so, erstmal war da kein fenster zum schreiben, also hab ich mal so ein item hinzugefügt, namens code file.

War das vielleicht richtig so? dann hab ich das eingefügt, und debugged. ganz kurz ist dos erschienen und fertig.

Wo ist nun die datei zum öffnen?
0

Thema verteilen:


  • 5 Seiten +
  • 1
  • 2
  • 3
  • 4
  • 5

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0