(C++ Anfänger) Möchte im Prinzip eine Software entwickeln und habe einige Fragen?

Hey,

ich möchte ein Programm in C++ erstellen. Es soll eine moderne Oberfläche haben und mir ist wichtig, das es auf verschiedenen Betriebssystemen laufen soll, nicht nur auf Windows. Ich bin ein Anfänger und kann gerade mal die Grundlagen von C++, setze mir jedoch hohe Ziele. Ich habe bis jetzt mit der IDE Visual Studio programmiert, sollte ich zu Qt o.ä wechseln? Ich habe gelesen das es mit anderen IDE's einfacher sei GUI's zu erstellen, weiß jedoch nicht ob das stimmt. Ich möchte eine Software entwickeln, die modern und schnell ist, sowie auf anderen Betriebssystemen läuft. Damit es auf anderen Betriebssystem läuft muss ich es neu kompilieren richtig? Muss ich den Code ändern, damit es auf anderen Betriebssystemen läuft? Was für ein Projekt sollte ich erstellen? Und was für Bibliotheken bzw. API's werden verwendet wenn ich ein Projekt erstelle(Kann ich Bibliotheken oder API's einfach downloaden und damit programmieren)? Habe ich bei Visual Studio bisher immer die Windows API benutzt? Was ist Windows Runtime C++ und was ist C++/CLI? DirectX ist nur für 3D Anwendungen da richtig? Habe viel Zeit, ich würde jeden Tag mindestens 2 Stunden lernen. Ich weiß ich kann auch Google für wahrscheinlich all diese Fragen verwenden, wenn du nicht antworten möchtest, lass es einfach :)

Lg

PC, Computer, Software, Technik, programmieren, cplusplus, CPP, Informatik, programmieren lernen, Technologie, Visual Studio, Spiele und Gaming
3 Antworten
C#: Letzte Spalte in ListView wird nicht angezeigt?

Hallo,

ich will gerade eine Windows Forms-Anwendung schreiben, die aus einer Textdatei Zeilen ausliest und diese in einem ListView-Element wiedergibt.

Leider habe ich bei der letzten Spalte ein Problem:

Wie man sieht, werden der Name und das Datum angezeigt, die Nachricht jedoch nicht.

Quellcode:

using System;
using System.IO;
using System.Windows.Forms;

  namespace Klassenchat
  {
    public partial class frmChat : Form
    {
      public static string datPath = @"....\Textfile.txt";
  
      // Aktueller Nutzer:
      public static string aktUsername = String.Empty;
  
      private string aktUhrzeit = String.Empty;
  
      private string aktNachricht = string.Empty;
  
      private string aktMSG = String.Empty;

      // Ältere Nutzer:
      private string altUsername = String.Empty;
  
      private string altDatum = String.Empty;
  
      private  string altNachricht = String.Empty;
  
      // Nachrichten laden:
      private string[] alleNachrichten = File.ReadAllLines(datPath);
  
      public frmChat()
      {
        InitializeComponent();
      }
  
      private void frmChat_Load(object sender, EventArgs e)
      {
        frmLogin frmLogin = new frmLogin();
        frmLogin.ShowDialog();
  
        if (aktUsername == "")
        {
          this.Close();
        }
  
        lblUsername.Text += " " + aktUsername;
  
        // Alle alten Nachrichten laden:
        for (int i = 0; i < alleNachrichten.Length; i++)
        {
          nachrichtenAnzeigen(alleNachrichten[i]);
          ListViewItem neu = lvNachrichten.Items.Add(altUsername);
          neu.SubItems.Add(altDatum);
          neu.SubItems.Add(altNachricht);
        }
      }
  
      private void nachrichtenAnzeigen(string altNachricht)
      {
        string[] zerlegteNachricht = altNachricht.Split(';');
        altUsername = zerlegteNachricht[0];
        altDatum = zerlegteNachricht[1];
        altNachricht = zerlegteNachricht[2];
      }
    }
  }
}

// Textdatei: a;Datum einfügen;Testnachricht
PC, Computer, Schule, Fehler, programmieren, Visual Studio
3 Antworten
Habe 3 Fragen: Microsoft Visual, Ruckeln beim Spielen, absturz beim Spielen!?

Wollte fragen warum und ob es normal ist das es so viele Microsoft Visual Programme/Treiber sind. Ich habe auch momentan irgendwie jedes mal Probleme was das Spielen angeht. Ich habe zwar gute oder fast gute Sachen am PC was man auch Anfangs gemerkt hat. Und irgendwie auf einmal der PC am Ruckeln ist wenn ich bei Spielen 180 Grad umher schau. letztens habe ich auch so ein Problem gehabt vor einer Woche und habe gelesen das ich mein PC Zurücksetzten soll und die Festplatten löschen soll. Aber das ich das wirklich jede Woche machen muss ist jetzt nicht so schön. Es liegt aber auch nicht an den Mainboard einstellungen ich habe ein Asus Prime B350 Plus und habe Standart eingestellt wo ich dann noch eine Frage habe:

Wieso stürzt mein PC immer bei Spielen ab z.B Dirty Bomb nach 7 Min (Kommt drauf an welche Karte) oder CS:GO stürzt es vll nach 10-20 min ab und ich wollte unbedingt GTA Kaufen aber was bringts wenn der PC nur am abstürzen ist. Obwohl bei YT Tests die Prozessoren was gutes aussmachen aber wieso bei mir nicht???

Ich habe mein PC selbst gebaut mit guter Hilfe:

Ryzen 3 1200G

Asus Prime b350 Plus

Rx570 (Power Color)

8GB Ram

1 SSD 1HDD

Und wenn ihr noch was wissen wollt fragt! (Bild ist ein Screenshot von dem Visual da und die die ganze Seite wo man sieht ist eigentlich alle Programme die ich habe (oder Treiber) bis auf ein paar die im Bild nicht zu sehen sind)

Computer, Microsoft, Technik, PC-Spiele, Gaming, Technologie, Visual Studio, Spiele und Gaming
2 Antworten
C#: Meine Tests in Visual Studio lassen sich nicht mehr ausführen?

Die ganze Zeit lief in meiner Projektmappe von .NET Framework-Bibliotheken alles problemlos, ich konnte meine Testmethoden problemlos schreiben und ausführen (ist meine erste Erfahrung mit MSTest). Dann habe ich in einer meiner Bibliotheken einen AssertHelper geschrieben, indem ich Assert.IsInstanceOf aufrufe. Weil diese Bibliothek Assert nicht kannte, habe ich der Empfehlung Visual Studios naiv folgend MSTest.TestFramework von NuGet installiert.

Jetzt ließen sich die Tests für dieses Projekt allerdings nicht mehr ausführen, ich bekam recht dubiose Fehler ("[MSTest][Discovery] Fehler beim Ermitteln von Tests aus der Assembly. Ursache:Die Datei oder Assembly "System.Runtime" oder eine Abhängigkeit davon wurde nicht gefunden. Das System kann die angegebene Datei nicht finden."). In einem GitHub-Issue habe ich herausgefunden, dass ich die Packages deinstallieren und auf eine lokale DLL verweisen solle, was ich dann auch gemacht habe.

Problem nun: Beim Kompilieren meines Testprojektes findet VS nun keine Definition mehr für Assert.ThrowsException - alle anderen Tests mit den normalen Methoden AreEqual, IsInstanceOfType etc. kennt er aber! Dieses Bild bestätigt sich auch, wenn ich mit F12 die Metadaten für die Assert-Klasse anzeigen lasse. Auf MS Docs steht für all diese Methoden aber die gleiche benötigte MSTest-Version, weswegen ich mir dieses Phänomen nicht erklären kann. In besagter Metadatenansicht zeigt VS nur an, Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll läge in der Version 10.0.0.0 vor.

Ich weiß nicht weiter - wie kann ich einfach nur meine Tests wieder ausführen, wie ich es vorher getan habe? Davon, die Projektmappe aus allen einzelnen Sourcefiles manuell erneut zusammenzustellen, würde ich gerne absehen, weil sie immerhin schon aus sechs einzelnen Projekten besteht (die teils auch in anderen Projektmappen Anwendung finden).

Über eure Hilfe wäre ich dementsprechend hocherfreut!

Computer, Test, Microsoft, Technik, IT, programmieren, IDE, Programmierung, C Sharp, CSharp, Informatik, Technologie, Visual Studio, vs, .net-Framework, NET, Spiele und Gaming
1 Antwort
C++ break funktioniert nicht?

Halli Hallo,

ich lerne gerade C++ und schreibe ein simples Konsolen Programm.

Wenn ich folgenden Code ausführe und ".close" eingebe und dann "n" eingebe, muss ich "n" ein zweites mal eingeben, um aus der Schleife heraus zukommen.

Weiß irgendwer was ich falsch gemacht habe?

Danke im voraus und schönes Wochenende!
MfG

Dominic

#include <iostream>
#include <string>

int main() {

std::string userinput;
std::string modules[2] = {"standard module","editor module"};

std::cout &lt;&lt; "C++ console program v1.0\ntype '-h' for help" &lt;&lt; std::endl &lt;&lt; std::endl;

while (true) {
    std::cin &gt;&gt; userinput;

    if (userinput == "-h") {

        std::cout &lt;&lt; std::endl &lt;&lt; "-------------------" &lt;&lt; std::endl;&nbsp;
        std::cout &lt;&lt; "type '-h' for help\ntype '.m' to show the activated modules\ntype '.m_list_all' to list all modules\ntype '.close' to close the console" &lt;&lt; std::endl;
        std::cout &lt;&lt; "-------------------" &lt;&lt; std::endl;

    }
    else if (userinput == ".m") {

        std::cout &lt;&lt; "standard module" &lt;&lt; std::endl;

    }
    else if (userinput == ".m_list_all")
    {
        for (int i = 0; i &lt; 2; i++)
            std::cout &lt;&lt; modules[i] &lt;&lt; "\n";
    }
    else if (userinput == ".close")
    {
        std::cout &lt;&lt; "Are you sure to close the console?&nbsp; [y/n]" &lt;&lt; std::endl;
        std::cin &gt;&gt; userinput;

        while (true)
        {
            std::cout &lt;&lt; "Are you sure to close the console?&nbsp; [y/n]" &lt;&lt; std::endl;
            std::cin &gt;&gt; userinput;

            if (userinput == "y")
            {
                return 0;
            }
            else if (userinput == "n")
            {
                break;
                break;
            }
            else
            {
                while (true)
                {
                    std::cout &lt;&lt; "Are you sure to close the console?&nbsp; [y/n]" &lt;&lt; std::endl;
                    std::cin &gt;&gt; userinput;

                    if (userinput == "y")
                    {
                        return 0;
                    }
                    else if (userinput == "n")
                    {
                        break;
                    }
                }
            }
        }

        /*if (userinput == "y") {
            return 0;
        }
        else if (userinput == "n") {
            break;
        }
        else
        {
            while (true) {
                std::cout &lt;&lt; "Are you sure to close the console?&nbsp; [y/n]" &lt;&lt; std::endl;
                std::cin &gt;&gt; userinput;

                if (userinput == "y") {
                    return 0;
                }
                else if (userinput == "n") {
                    break;
                }
            }
        }
        */
    }
    else {
        std::cout &lt;&lt; "----------------------------" &lt;&lt; std::endl;
        std::cout &lt;&lt; "unknown command: '" &lt;&lt; userinput &lt;&lt; "'\ntry '-h' for help" &lt;&lt; std::endl;
        std::cout &lt;&lt; "----------------------------" &lt;&lt; std::endl;
    }

}

}

PC, Computer, Konsolen, programmieren, Schleifen, Break, CPP, Visual Studio, Loop
2 Antworten

Meistgelesene Fragen zum Thema Visual Studio

Wie kann ich unter Visual Studio 2017 RC ein Klassendiagramm erzeugen?

4 Antworten

VS Community: Lizenz abgelaufen?

2 Antworten

Brauche ich Visual Studio 2012 x64 redistributables und visual studio 2012 x84 restributables?

1 Antwort

Exe Datei mit Visual Studio öffnen

3 Antworten

Visual Studio installiert unfassbar lang?

1 Antwort

VIsual studio c++ Das System kann die angegebene Datei nicht finden

3 Antworten

Was ist der unterschied zwichen ArrayList und List?

2 Antworten

CMD befehl aus Visual Studio ausführen

3 Antworten

Visual Basic: Speicherort des Programms

3 Antworten

Visual Studio - Neue und gute Antworten