-
Gesamte Inhalte
185 -
Benutzer seit
-
Letzter Besuch
-
Tagessiege
1
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Alle Inhalte von mfk'); DROP TABLE Users;--
-
Ich bin ein wenig verwirrt: Ist myviewport3d in deinem Code ein System.Windows.Controls.Viewport3D oder ein HelixToolkit.Wpf.HelixViewport3D? Im letzteren Fall musst du wohl nicht die Kamera einrichten, aber ein Licht solltest du hinzufügen. Zumindest ist das mein Eindruck beim Überfliegen der Beispiele.
-
Visual Basic Passwort Feld
mfk'); DROP TABLE Users;-- antwortete auf mancharta's Frage in Anwendungsentwickler und Programmierer
Dann hast du bei der Umsetzung etwas falsch gemacht. Ich hoffe, du hast nicht einfach nur diesen Codeschnipsel irgendwo eingefügt. -
C++ - Record Array als Parameter mitgeben
mfk'); DROP TABLE Users;-- antwortete auf wisdomsoz's Frage in Anwendungsentwickler und Programmierer
Mehrere Probleme: Brauchst du nicht. Das funktioniert nicht. Arrays passen ihre Größe in C++ nicht magisch an die Erfordernisse an. Benutz std::string statt char-Arrays. Der Dereferenzierungsoperator (Stern) ist hier überflüssig. Der []-Operator führt bereits eine Dereferenzierung durch. Allgemein bedeutet a[ b] dasselbe wie *(a+b), solange du nicht anfängst, die Operatoren selbst zu überladen. Die Angabe von "struct" ist in C++ (im Gegensatz zu C) unnötig. Die Funktion eingabe_station erwartet einen Zeiger auf wetterstation_typ, nicht einen Zeiger auf Array von wetterstation_typ. Grundsätzlich solltest du einen Container der Standardbibliothek (z.B. std::array oder std::vector) benutzen. Dann hast du auch nicht mehr das Problem, dass du in der Funktion nicht weißt, wie groß das Array war. Die Schleife ist unnötig. Du probierst hier alle gültigen i durch, ob sie zur Eingabe passen. Denselben Effekt hätte eine einfache if-Anweisung, die prüft, ob die Eingabe gültig ist. -
ERM: Entität bearbeitet Attribut einer anderen Entität?
mfk'); DROP TABLE Users;-- antwortete auf eine Frage in Anwendungsentwickler und Programmierer
Kommt drauf an, ob du nur den letzten Status brauchst, oder die ganze Historie. -
Wordlist generator
mfk'); DROP TABLE Users;-- antwortete auf noame's Frage in Systemadministratoren und Netzwerktechniker
Für Passwörter also, wie überraschend... -
Wordlist generator
mfk'); DROP TABLE Users;-- antwortete auf noame's Frage in Systemadministratoren und Netzwerktechniker
Die Sonderzeichen dürfen sich also wiederholen, die Worte aber nicht? Kein baumbaumbaum? -
Unterschied zwischen reference Typ und expanded Type
mfk'); DROP TABLE Users;-- antwortete auf murat1895's Thema in Delphi/RPG+CL/Sonstige
Expanded sind Wert-Typen (Vergleich bedeutet Wert-Gleichheit, Zuweisung überschreibt Attribute). Wie struct in C#. Reference sind Referenz-Typen (Vergleich bedeutet Objekt-Identität, Zuweisung bewirkt, dass der Verweis auf ein anderes Objekt zeigt). Wie class in C#. Deferred heißt einfach nur, dass man davon keine Instanz erzeugen kann. Wie abstract in C#. -
Suche Erklärung für eine Prüfungsaufgabe
mfk'); DROP TABLE Users;-- antwortete auf aether's Thema in Prüfungsaufgaben und -lösungen
Ich würde das so lösen: Zunächst der Speicherbedarf einer einzelnen Positionsangabe: Eine einstellige Hex-Zahl entspricht 4 Bit (16 mögliche Zustände): 11 * 4 Bit = 44 Bit = 5½ Byte Ich gehe nicht davon aus, dass hier halbe Bytes verwendet werden sollen. Wenn man auf diesem Niveau Speicher sparen wollte, würde man zunächst ein sparsameres Datenformat wählen. Darum werden aus den 5½ Bytes aufgerundet 6. Eine Positionsangabe pro Minute sind 1440 Positionangaben in 24 Stunden. Der Speicherbedarf ist also 1440 * 6 Byte = 8.640 Byte. -
Du kannst nicht dasselbe Objekt mehrfach als Content verwenden. Es müsste funktionieren, wenn du die Ressourcen mit x:Shared="false" versiehst. Dann wird bei jedem Verweis eine neue Instanz erstellt.
-
Changelog mit template für geänderte Variablen
mfk'); DROP TABLE Users;-- antwortete auf PL1994's Thema in C und C++
Das Problem hättest du bei deinem Ansatz in jedem Fall. Wenn du unterschiedliche Typen zusammenwirfst, musst du sie hinterher wieder aufwändig unterscheiden (wenn es keine sinnvolle Vererbungshierarchie gibt). Ich verstehe auch nicht, was dir dieses Changelog überhaupt bringt. Du weißt damit, dass zum Zeitpunkt X ein int von 1 auf 2 geändert wurde. Was nützt dir das? Weder kannst du daraus herleiten, welcher Datensatz geändert werden muss, noch welches Feld des Datensatzes (wenn es denn mehr als ein int-Feld gibt). Und wie willst du Lösch- und Einfügeaktionen abbilden? Du solltest die Änderungsverfolgung nicht auf Basis einzelner ints und Strings modellieren, sondern auf den Objekten, die deinen Datensätzen entsprechen. Und da ist es durchaus sinnvoll, für jede Art von Objekt eine separate Änderungsverfolgung zu haben. -
VIsual Studio Exception
mfk'); DROP TABLE Users;-- antwortete auf sas86ks's Frage in Anwendungsentwickler und Programmierer
Die Sprache der Ausnahmetexte hat nichts mit der Sprachversion von Visual Studio zu tun, nur mit den Spracheinstellungen von Windows und den installierten Sprachpaketen des .NET Frameworks auf dem ausführenden Rechner. Auch mit einem englischen VS hättest du lokalisierte Texte. -
Changelog mit template für geänderte Variablen
mfk'); DROP TABLE Users;-- antwortete auf PL1994's Thema in C und C++
Gar nicht. Hier passiert etwas, das "Slicing" genannt wird. Du hast eine map<time_t, AbstractChange>. Du kannst hier Objekte von Klassen ablegen, die von AbstractChange erben, da hier eine implizierte Konvertierung stattfindet. Aber die map speichert wirklich nur AbstractChange-Objekte. Alles, was durch Vererbung dazukommt, wird abgeschnitten (daher der Name des Effekts). Folgende Dinge müssen dir klar sein: Verschiedene Instanzen eines Klassentemplates sind nicht irgendwie "verwandt". Change<foo> und Change<bar> sind zwei getrennte, komplett unterschiedliche Klassen. Die Typen sind nicht ineinander umwandelbar. Selbst wenn es eine implizite Konvertierung zwischen foo und bar selbst gibt. Es gibt keine Gemeinsamkeit, auf Basis derer eine Zusammenfassung stattfinden könnte (außer du baust eine gemeinsame Basisklasse ein). Der Typ eines jeden einzelnen Ausdrucks im Code steht zur Compile-Zeit fest. Du könntest mit Smartpointern arbeiten, oder Sammeltypen wie boost::any benutzen. Grundsätzlich würde ich aber zunächst einmal klären, was du mit den gesammelten Daten überhaupt machen willst. -
Du möchtest, dass die Menge ein Vielfaches des Faktors ist. Das kannst du prüfen, indem du den Rest der Division von Menge und Faktor prüfst: 10 / 5 = 2 Rest 0 -> OK 12 / 5 = 2 Rest 2 -> NEIN Den Divisionsrest erhältst du in C# (und in vielen anderen Programmiersprachen) mit %-Operator if(menge % faktor == 0) // OK
-
Liste aus Datensätzen in Schelife erstellen
mfk'); DROP TABLE Users;-- antwortete auf PL1994's Thema in C und C++
Vermutlich liegt das Problem in Country. Du speicherst die Strings doch nicht nur als Zeiger, oder? -
Window Style für Dialogbox
mfk'); DROP TABLE Users;-- antwortete auf PL1994's Frage in Anwendungsentwickler und Programmierer
Das steht da nicht. Da steht, dass dieser Style einen Rand erzeugt, wie er für Dialoge typisch ist. Die Information, dass Fenster mit diesem Style keine Titelleiste haben, ist missverständlich formuliert. Der Style für eine Titelleiste, WS_CAPTION, besteht gerade aus WS_DLGFRAME kombiniert mit WS_BORDER. -
Fiber Channel nur über optischem medium
mfk'); DROP TABLE Users;-- antwortete auf eine Frage in Systemadministratoren und Netzwerktechniker
Da steht nichts von "alter Version". Da steht, dass der ursprüngliche Entwurf nur Glasfaser vorsah. Mutmaßlich kam die Unterstützung von Kupferkabeln noch während der Standardisierung hinzu. Man hat sich trotzdem entschieden den Namen beizubehalten, allerdings mit der Schreibweise "Fibre", um es (zumindest im amerikanischen Englisch) vom Transportmedium abzugrenzen. -
Ja, da ist ein Fehler. Mich wundert, dass die Variante, aus der dieser Code stammen soll, angeblich funktioniert. Falsch abgeschrieben?
-
Wie gesagt: Fast alles steht schon da. Die ursprüngliche Zeile lautet int[] liste = {0,9,4,6,2,8,5,1,7,3};Wir wollen aber keine Liste mit 0, 9, 4 usw., sondern mit unseren ints. Ersetze also hier die festen Zahlen durch deine int-Variablen.
-
Du bist nah dran, aber du versuchst zu viel in eine Zeile zu packen. Alles, was du brauchst, hattest du schon einmal in deinem Code. Zerlege dein Problem in Teilprobleme (das ist sowieso immer eine gute Idee). Aus dem Problem "Liste mit vom Benutzer eingegeben Zahlen erzeugen" wird dann: Strings vom Benutzer einlesen (das ist der Teil mit dem InputStreamReader)Eingelesene Strings in Zahlen umwandeln (das ist der Teil mit parseInt)Aus den Zahlen ein Array konstruieren (so wie in der Zeile mit den vordefinierten Zahlen)Diese drei Teile musst du einzeln umsetzen. Nacheinander. Nicht irgendwie in eine Zeile verwurschtelt. Es gibt dafür sicher auch einen eleganten Einzeiler, aber du musst zuerst die Grundlagen verstehen.
-
Das hier ist die Stelle in main, wo das Array mit den Zahlen für die Sortierung erzeugt wird: int[] liste = {0,9,4,6,2,8,5,1,7,3};Du musst das Array mit den Benutzereingaben füllen, also gehört der Code zum Einlesen davor. Und dann erstellst du das Array liste nicht aus diesen vorgegebenen Zahlen, sondern aus den Zahlen, die der Benutzer eingegeben hat.
-
Wie bereits gesagt: Lass die Finger von der Methode sortiere, die ist gut, so wie sie ist. Ändere main. Dort fängt das Programm an.
-
zahl1 bis zahl3 hast du deklariert. Und Code für eingabe1 bis eingabe3 hast du in deinem ersten Beitrag schon gezeigt:
-
Zuerst eine Erkenntnis: Vorgegebene Zahlen sortiert man genau gleich wie vom Benutzer eingegebene. Klingt trivial, ist aber wichtig. Das bedeutet nämlich, dass du die Methode sortiere nicht ändern musst, nur die Methode main, wo die Zahlen herkommen. Dort wird das Array liste direkt im Code befüllt. Diesen Teil des Codes musst du durch eine Benutzereingabe ersetzen, sonst nichts. Diese Vorgehensweise bringt leider gar nichts. Der Compiler ist zufrieden, wenn er das Programm übersetzen kann. Er kann nicht erkennen, ob das Programm das Richtige tut.