Vraag & Antwoord

Programmeren

Foutmelding in C#2008 code

4 antwoorden
  • Wat is er fout in de volgende codelijn: cards = new Card[52]; en volgenden referentie's naar Card?? Onder Card staat in VCE een rode golflijn en de fout-melding dat Card niet kan worden gevonden... ****** using System; using System.Collections.Generic; using System.Text; namespace Ch10CardLib { public class Deck { private Card[] cards; public Deck() { cards = new Card[52]; // Foutmelding op Card for (int suitVal = 0; suitVal < 4; suitVal++) { for (int rankVal = 1; rankVal < 14; rankVal++) { cards[suitVal * 13 + rankVal - 1] = new Card((Suit)suitVal, (Rank)rankVal); } } } public Card GetCard(int cardNum) { if (cardNum >= 0 && cardNum <= 51) return cards[cardNum]; else throw (new System.ArgumentOutOfRangeException("cardNum", cardNum, "Value must be between 0 and 51.")); } public void Shuffle() { Card[] newDeck = new Card[52]; bool[] assigned = new bool[52]; Random sourceGen = new Random(); for (int i = 0; i < 52; i++) { int destCard = 0; bool foundCard = false; while (foundCard == false) { destCard = sourceGen.Next(52); if (assigned[destCard] == false) foundCard = true; } assigned[destCard] = true; newDeck[destCard] = cards[i]; } newDeck.CopyTo(cards, 0); } } } ***** perloc
  • [quote:4e31a841c4="perloc"]Wat is er fout in de volgende codelijn: cards = new Card[52]; en volgenden referentie's naar Card?? Onder Card staat in VCE een rode golflijn en de fout-melding dat Card niet kan worden gevonden... [/quote:4e31a841c4]Het enige wat ik zo snel kan bedenken is dat de class Card niet bestaat of toegankelijk is vanuit je programma. Wat je zou kunnen controleren: - bestaat er uberhaupt een class met deze naam? - als de class bestaat, is deze als private, public, internal gedeclareerd? Of alleen als class? Bijvoorbeeld:[code:1:4e31a841c4]public class Card { ... }[/code:1:4e31a841c4] Dat zijn even snel wat zaken die je na zou kunnen kijken. En anders zal je wat meer info (code) moeten laten zien. Dan wordt het misschien duidelijker.
  • meneer_ed, je hebt me op het goede spoor gezet. Dat is gewoon onervarenheid met C# 2008: ik ben heb nog steeds het licht niet gezien. Er is inderdaad een lib Card.cs geheten maar die stond in een separate folder. Ik heb jarenlang geprogrammeerd in extended Clipper (xHarbour.com), maar dat is zo afwijkend van - en makkelijker als C#, dat ik daaraan weinig heb met programmeren in C#. Het is mijn stellige indruk dat er maar zeer weinig wordt geprogrammmeerd (in Nederland) want dit onderwerp, Programmeren daar wordt maar zeer spaarzaam gebruik van gemaakt. Dank! perloc
  • [quote:db722d2a6d="perloc"]meneer_ed, je hebt me op het goede spoor gezet.[/quote:db722d2a6d]Graag gedaan. [quote:db722d2a6d="perloc"]Dat is gewoon onervarenheid met C# 2008: ik ben heb nog steeds het licht niet gezien. Er is inderdaad een lib Card.cs geheten maar die stond in een separate folder. [/quote:db722d2a6d]Dat hoeft geen probleem te zijn, als je er maar voor zorgt dat de classes dezelfde namespace delen. Bijvoorbeeld: [code:1:db722d2a6d] namespace MyNameSpace { public class Main { .. } } [/code:1:db722d2a6d]kan prima overweg met een (bijvoorbeeld) Card class die is opgeslagen in een andere map, zolang deze Card class ook maar binnen de namespace MyNameSpace valt, [b:db722d2a6d]en[/b:db722d2a6d] aan het project is toegevoegd. Zoals dit[code:1:db722d2a6d]namespace MyNameSpace { public class Card { .. } }[/code:1:db722d2a6d] En als de namespace om de een of andere reden niet gelijk kan zijn, dan moet je er voor zorgen dat VCE weet waar hij/zij/het moet zoeken, bijvoorbeeld door de namespace van de Card class te gebruiken: [code:1:db722d2a6d]AndereNameSpace.Card[/code:1:db722d2a6d] [quote:db722d2a6d="perloc"]Het is mijn stellige indruk dat er maar zeer weinig wordt geprogrammmeerd (in Nederland) want dit onderwerp, Programmeren daar wordt maar zeer spaarzaam gebruik van gemaakt. [/quote:db722d2a6d]Ik denk dat het wel meevalt met dat weinig programmeren. Voor mijzelf als programmeur is dit forum nou niet de eerste plaats waar ik ga zoeken als ik een probleem met programmeren heb. Dus om dan te concluderen dat er weinig geprogrammeerd wordt vind ik een beetje te kort door de bocht. Maar goed, ik kijk wel regelmatig, voornamelijk omdat ik geinteresseerd ben in wat anderen bezighoudt. En soms kan ik zelfs iemand helpen :)

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.