Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Klotzkopp

User
  • Registriert

  • Letzter Besuch

Alle Beiträge von Klotzkopp

  1. Nur am Rande: Da delete bei einem Nullzeiger nichts bewirkt, kannst du dir das if sparen. Zum eigentlichen Problem: Hat die Klasse noch andere Member, womöglich Arrays? Du könntest auch einen Watchpoint auf den Zeiger setzen, so dass dein Programm beim Debuggen anhält, sobald der Zeiger verändert wird. Ob und wie das geht, hängt vom benutzten Debugger ab.
  2. Wenn zweimal hintereinander Null kommt, musst du aufhören. Das ist die Ende-Markierung.
  3. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in Anwendungssoftware
    Jeder, der "Outlook Express Regeln" in die Suchfunktion eingibt und diesen Thread findet. Bitte.
  4. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C++: Compiler, IDEs, APIs
    Dafür hättest du kein neues Thema eröffnen müssen, ich führ das mal zusammen. Was ist das denn für ein Feld, und wie sieht die Zuweisung aus?
  5. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C++: Compiler, IDEs, APIs
    Wäre gut, wenn du noch verrätst, wie die lautet.
  6. In C++ muss der op= nichtstatischer Member sein. In C# kannst du den op= nicht überladen. Siehe auch hier.
  7. Weil dann beide Operanden als Parameter auftauchen, und damit beide gegebenenfalls umgewandelt werden können. Ein nichtstatischer Member-Op+ hätte ja nur einen Parameter. In C++ wäre ein Op+ sinnvollerweise eine globale Funktion. Und da du in C# keine globalen Funktionen haben kannst, bleibt dir nichts anderes übrig.
  8. Soweit ich weiß, sind nur bestimmte Operator statisch. Die Zuweisungsoperatoren, z.B. operator+= sind immer nichtstatisch. Das hat auch seinen Sinn. Wenn man operator+ z.B. als Member deklarieren würde, wären automatische Umwandlungen nur mit dem zweiten Operanden möglich. Angenommen, du hast eine Klasse SuperInt, die beliebig große Ganzzahlen verarbeiten kann. Die Klasse hat einen Copy-Ctor für int, damit geht folgendes: SuperInt s( 5 ); SuperInt t = s + 2; Aber folgendes geht nicht, weil der erste Operand bei einem Member-Op immer ein SuperInt sein muss: SuperInt u = 2 + s; Darum würde man in C++ den operator+ außerhalb der Klasse deklarieren. In C# macht man das mit statischen Ops. Finde ich übrigens sehr sinnvoll.
  9. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in Anwendungssoftware
    So kann man das nicht sagen. In Standard-C/C++ gibt es tatsächlich keine Möglichkeit, eine grafische Ausgabe zu erzeugen. Das geht immer nur mit zusätzlichen, meist plattformspezifischen Bibliotheken, z.B. DirectX für Windows.
  10. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in Delphi/RPG+CL/Sonstige
    Du musst das neue Handle an TrayIcon.hIcon zuweisen. Außerdem musst du noch Shell_NotifyIcon mit NIM_MODIFY aufrufen.
  11. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in Plauderecke
    Hier geht's gleich rund... (E-Fulerum)
  12. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in Plauderecke
    Mein Büro liegt im Keller...
  13. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in Netzwerke
    Nein, nicht ok. Wenn du Zugriff auf diese Seiten benötigst, dann kläre das mit deinem Vorgesetzten oder dem Firewall-Administrator. Das Umgehen einer Firewall kann eine fristlose Kündigung nach sich ziehen.
  14. Go

    Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in Gaming Club's Allgemeine Themen
    Hier gibt es unter anderem zwei Shareware-Versionen: http://boardgamecentral.com/games/go.html
  15. Ist bei Windows 95 schon der Internet Explorer 4.0 dabei? Der ist nämlich laut MSDN Voraussetzung.
  16. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C++: Compiler, IDEs, APIs
    Zum Auslesen: Folgendes Beispiel liest zwei longs aus einer Tabelle: const char* pszQuery = "SELECT * FROM Table"; SQLHSTMT hstatement; if( RetCodeSuccess( SQLAllocHandle( SQL_HANDLE_STMT, hdbc, &hstatement) ) ) { long int long1 = 0, long2 = 0; long len; if( RetCodeSuccess( SQLExecDirect( hstatement, (SQLCHAR*) pszQuery, SQL_NTS ) ) ) { SQLBindCol( hstatement, 1, SQL_C_SLONG, (SQLPOINTER) &long1, 4, &len ); SQLBindCol( hstatement, 2, SQL_C_SLONG, (SQLPOINTER) &long2, 4, &len ); SQLINTEGER nResultRows; SQLRowCount( hstatement, &nResultRows ); if( nResultRows != 0 ) { if( RetCodeSuccess( SQLFetch( hstatement ) ) ) { // Auswerten... } } } SQLFreeHandle( SQL_HANDLE_STMT, hstatement ); } [/CODE] Durch wiederholtes Aufrufen von SQLFetch kann man weitere Datensätze auslesen. RetCodeSuccess ist übrigens eine Hilfsfunktion, die ich mir selbst geschrieben habe:[CODE]bool RetCodeSuccess( int nRetcode ) { return nRetcode == SQL_SUCCESS || nRetcode == SQL_SUCCESS_WITH_INFO; }Macht den Code erheblich übersichtlicher.
  17. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C++: Compiler, IDEs, APIs
    Zum Ausgeben: Du musst die Nachricht WM_PAINT behandeln. Zuerst rufst du BeginPaint auf, dadurch erhältst du ein Handle auf einen Device Context (DC). In diesen kannst du dann reinmalen oder schreiben, z.B. mit DrawText. Am Ende musst du EndPaint aufrufen.
  18. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C++: Compiler, IDEs, APIs
    LOGFONT lf; m_pFont->GetLogFont( &lf ); CFontDialog dlg; dlg.m_cf.lpLogFont = &lf; dlg.m_cf.Flags |= CF_FIXEDPITCHONLY | CF_INITTOLOGFONTSTRUCT ; dlg.DoModal(); [/CODE]CFontDialog enthält eine CHOOSEFONT-Struktur (m_cf), die wiederum einen Zeiger auf eine LOGFONT-Struktur enthält. Aus deinem CFont kannst du dir eine solche Struktur füllen lassen (GetLogFont). Über die Flags wird das Verhalten des Dialogs gesteuert. CF_FIXEDPITCHONLY bedeutet, dass nur Festbreitenschriftarten angezeit werden, CF_INITTOLOGFONTSTRUCT bedeutet, dass der Dialog mit den Daten aus der LOGFONT-Struktur initialisiert wird. Es gibt noch weitere nützliche Flags, die du in der MSDN unter CHOOSEFONT Structure finden kannst.
  19. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in News und Feedback zu Fachinformatiker.de
    Das kannst du auf der Suchseite einstellen. Standardmäßig werden nur vollständige Wörter gesucht. Du hättest also *buch eingeben müssen. Das steht aber auch auf der Suchseite.
  20. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C und C++
    Aus einer Templatedefinition wird zunächst einmal kein Code erstellt. Der Code wird erst dann produziert, wenn das Template benutzt wird, und zwar für jeden Templateargument-Typ (bzw. für jede Kombination von Typen bei mehreren Templateargumenten) einmal. Das hat aber zur Folge, dass die Definition in jeder Übersetzungseinheit verfügbar sein muss, in der sie verwendet wird. In C++ ist dafür das Schlüsselwort export vorgesehen, das aber viele Compiler nicht unterstützen. Daher setzt man die Templatedefinitionen einfach in die Header. Wenn eine cpp-Datei das Template nicht braucht, passiert nichts (siehe oben), und wenn doch, ist der Code da. Das ist auch der Grund, warum die Container der Standardbibliothek (vector, map usw.) in den jeweiligen Headerdateien implementiert sind.
  21. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C und C++
    Das hat schon seinen Grund, wenn ich nach dem genauen Wortlaut der Fehlermeldung frage, weil die Hinweise für die Fehlerursache liefern kann. Oder lautet die Meldung wirklich genau so? Kann ich mir nicht vorstellen.
  22. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C und C++
    Wie lautet denn die Fehlermeldung? Nachtrag: Ich kann's mir denken... Die Definition der Templatefunktion muss in jeder Übersetzungseinheit, die sie verwendet, zur Verfügung stehen. Da einige Compiler mit dem Schlüsselwort export bei Templates nicht zurechtkommen, ist es am einfachsten, wenn du die Funktionsdefinition in die Headerdatei setzt.
  23. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C und C++
    Alles, was nicht variabel ist, kannst du aus der Templatedeklaration rausnehmen und fest in den Funktionskopf reinschreiben: template <class C> void foo( void(C::*funcp)(CString,int) )[/CODE]Hier sind Rückgabetyp und Argumenttypen festgelegt, nur die Klasse nicht.
  24. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C und C++
    Du könntest etwas in der Art machen: class Test { public: template <typename returntype, class C, typename Param1, typename Param2> void foo( returntype(C::*funcp)(Param1,Param2) ) { C x; Param1 p1; Param2 p2; (x.*funcp)( p1, p2 ); } }; class Callee { public: void bar( int x, double y ) { // irgendwas } }; int main() { Test t; t.foo( &Callee::bar ); }[/CODE]
  25. Klotzkopp hat auf einen Beitrag in einem Thema geantwortet in C und C++
    Der Typ des Zeigers pfunction ist void(CErweiterungsSnapShotDlg::*)(CString,CString) Falls du mit "beliebig" Zeiger auf Funktionen anderer Klassen oder mit anderer Signatur meinst: Das geht nicht. Du kannst an eine solche Funktion nur Zeiger auf Memberfunktionen von CErweiterungsSnapShotDlg übergeben, die void zurückgeben und zwei CString-Parameter haben. Du kannst eine solche Funktion über den Zeiger auch nur aufrufen, wenn du eine Instanz von CErweiterungsSnapShotDlg hast.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.