Alle Beiträge von Klotzkopp
-
Abfangen eines Absturzes (mfc, VC++2003)
Schau mal hier rein, das könnte hilfreich sein: http://www.codeproject.com/cpp/exception.asp
-
Abfangen eines Absturzes (mfc, VC++2003)
Fehler sollte man immer beheben, nicht ignorieren oder unterdrücken. Aber was steht denn im den "bekannten Fenster"? Mir fallen da spontan mehrere Möglichkeiten ein.
-
Redefinition Problem
Man bindet keine .cpp-Dateien über #include-Direktiven ein. Schreib dir eine .h-Datei, die die Deklaration der Funktion enthält, und binde die dort ein, wo du die Funktion brauchst.
-
Random Zahlen
So ist das bei Funktionen. Die Variable, die beim Aufruf benutzt wird, wird in die Variable übertragen, die in der Parameterliste der Funktion steht. Die Namen sind dabei völlig egal. Bei dir waren sie jeweils gleich, das müssen sie aber nicht sein. Das gleiche gilt auch für Schuss. Die drei Variablen namens Schuss im Code haben nichts miteinander zu tun. Du könntest den ersten Parameter in Team1 und Team2 auch Hinz bzw. Kunz nennen (du könntest ihn auch ganz weglassen, aber ich wiederhole mich ).
-
Random Zahlen
Ich habe es gerade ausprobiert, und es funktioniert. Ich musste nur vorher Team1 und Team2 von int auf void ändern. Welchen Compiler verwendest du, dass der das akzeptiert? Du hast zwei int-Funktionen, die nichts zurückgeben.
-
Random Zahlen
Ganz einfach: Deine Funktionen Team1 und Team2 arbeiten mit Kopien der Variablen Treffer und Gegner. Änderungen an diesen Variablen wirken sich nicht auf die Variablen auf, mit denen du die Funktionen aufgerufen hast. Du kannst das beheben, indem du Treffer und Gegner als Referenz (int&) übergibst. Es gibt übrigens keinen Grund, die Variable Schuss zu übergeben. Deklarier sie einfach als lokale Variable in den Funktionen.
-
Random Zahlen
Ich sag's auch gern nochmal: Auch das sag ich gern nochmal: Der Fehler wird nicht immer da verursacht, wo der Compiler ihn meldet. Eine Funktion names Random gibt es im Standard nicht. Wenn du dazu Informationen suchst, solltest du sagen, welchen Compiler/IDE/Bibliothek du benutzt. Du brauchst eigentlich nur rand und srand.
-
Random Zahlen
An diesem Codefragment ist nichts falsch. Benutzt du irgendwelche defines? Wenn der Code nicht allzu lang ist, zeig ihn ganz. Oder nimm soviel wie möglich weg, so dass der Fehler bestehen bleibt.
-
Problem mit WSADATA und WSAStartup
Du hättest auch gleich sagen können, dass du eine MFC-Anwendung hast. Falls das Projekt noch nicht zu groß ist, solltest du es neu anlegen, und beim Assistenten die Unterstützung für Windows Sockets aktivieren. Falls du das nicht willst oder kannst, probier mal das hier: Setze ans Ende der stdafx.h: #include <afxsock.h> Setze folgendes in die InitInstance-Methode der App-Klasse, hinter den Aufruf von CWinApp::InitInstance: if (!AfxSocketInit()) { AfxMessageBox(IDP_SOCKETS_INIT_FAILED); return FALSE; }[/code] P.S.: Verschoben nach C++: Compiler, IDEs, APIs
-
Problem mit WSADATA und WSAStartup
In der MSDN Library steht sowohl bei WSADATA als auch bei WSAStartup: Header: Declared in Winsock2.h.
-
hilfe bei c++ programm (sizeof)
Das hat aber mit der Methode dynamic_size nichts zu tun. Die Funktion soll doch die Größe zurückgeben. Also darf sie nicht void sein. sizeof ist ein Operator. Er braucht also einen Operanden. Welcher das ist, steht schon im Text. Du hast es selbst schon geschrieben. Anzahl soll eine int-Variable (Attribut) sein, keine Methode.
-
Programmieren einer Scannersoftware für den Dokumentenscanner DR 3020 von CANON
Da das mit Standard-C++ nicht zu lösen ist: Verschoben nach: C++: Compiler, IDEs, APIs.
-
hilfe bei c++ programm (sizeof)
Dann machen wir doch mal Einzelteile draus: Der Name ist vorgegeben: dynamic_size Welcher Rückgabetyp? Für welche Klasse(n) muss sie implementiert werden? Welcher Inhalt? Virtuell, ja oder nein? Was kannst du beantworten?
-
hilfe bei c++ programm (sizeof)
Wo ist denn konkret das Problem? Das hier: ist doch recht deutlich.
-
Die OnDraw Methode
Für mich sieht das so aus, als ob du immer nur das Feld für den zuletzt gemachten Zug ausmalst. Du malst ja immer nur entweder einen Kreis oder ein Kreuz. Die vorausgegangenen Züge musst du auch malen. P.S.: Wenn kreis sowieso immer !kreuz, kannst du auch auf eine der beiden Variablen verzichten.
-
Betriebssystem ermitteln (Windows, Linux, Mac OS)
Solange man sich beim Programmieren an den Standard hält, ist C++ auf Quellcodeebene portabel. Da sich aber die Binärformate für ausführbare Dateien auf den einzelnen Betriebssystemen unterscheiden, kann ein kompiliertes C++-Programm nicht mehr OS-übergreifend portabel sein, wenn man von Emulationen und virtuellen Maschinen absieht.
-
Betriebssystem ermitteln (Windows, Linux, Mac OS)
Ein für Windows kompiliertes C++-Programm läuft nicht unter Linux, und umgekehrt. Also bringt dich ein C++-Programm nicht weiter.
-
SHBrowseForFolder und BIF_NEWDIALOGSTYLE
Das Core SDK sollte IIRC reichen. Installier das erst mal, dann schau nach, ob die shlobj.h dabei ist.
-
SHBrowseForFolder und BIF_NEWDIALOGSTYLE
Hast du das aktuelle Platform SDK installiert und die include-Pfade entsprechend gesetzt?
-
Wozu Destruktor??
Weil du QUOTE statt CODE benutzt. Oder zuviele Fragezeichen
-
C++ FAQ: Death & Rebirth
Ich wollte die Foren durchsuchen und Kandidaten selbst reinstellen, bin aber noch nicht dazu gekommen. Ich bitte auch um Nachsicht, dass zur Zeit das Freigeben der eingestellten Beiträge eher zäh ist.
-
Druckfunktion für ListView
Es gibt noch DrawText. Das kann z.B. Zeilenumbruch, Tabulatoren, Ellipsen (...) bei zu langem Text und noch einiges mehr. Es kann auch mit nullterminierten Strings arbeiten. Für einfache Ausgabe ist aber TextOut das Mittel der Wahl.
-
Druckfunktion für ListView
TextOut beachtet keine Nullterminierung. Du musst im fünften Parameter die tatsächliche Anzahl der auszugebenden Zeichen angeben, nicht die Größe des Puffers.
-
Internet Explorer über Netzwerk schliessen
Ich denke, ohne wird's nicht gehen. Aber das lässt sich auch lösen. Du kannst ja mal hier reinschauen.
-
Internet Explorer über Netzwerk schliessen
Was bedeutet "das Internet soll nicht laufen"? Soll nur das Programm Internet Explorer beendet werden? Willst du den Zugriff auf das Web (HTTP) unterbinden? Nur auf Server außerhalb eurer Domäne oder generell? Kommt die Installation eines Programms auf allen Clients in Frage?