C++ 输入命令控制台

C++ 输入命令控制台,c++,debugging,input,console,C++,Debugging,Input,Console,我想为我的应用程序制作一些调试控制台。它应该输出一些数据并接受输入命令。我该怎么做?最好的方法是更新控制台,比如:图形信息和在数据之后提示输入。 我在Linux下开发。例如,gdb可以从控制台获取输入。如果您熟悉socket编程(或者实际上是任何其他类型的IPC机制),您可能希望在应用程序中启用一些侦听器,并开发一个外部应用程序来为您完成所有“控制台”工作,与主应用程序通信时 假设你有一个应用程序,它有一个按钮和一个文本标签,每次你按下这个按钮,文本标签就会上升1,从1到2到3,以此类推 您可以

我想为我的应用程序制作一些调试控制台。它应该输出一些数据并接受输入命令。我该怎么做?最好的方法是更新控制台,比如:图形信息和在数据之后提示输入。
我在Linux下开发。例如,gdb可以从控制台获取输入。

如果您熟悉socket编程(或者实际上是任何其他类型的IPC机制),您可能希望在应用程序中启用一些侦听器,并开发一个外部应用程序来为您完成所有“控制台”工作,与主应用程序通信时

假设你有一个应用程序,它有一个按钮和一个文本标签,每次你按下这个按钮,文本标签就会上升1,从1到2到3,以此类推

您可以将套接字侦听器构建到该应用程序中。当套接字侦听器接受新的传入连接时,您应该启动一个连接线程,该线程可以:

  • 接收“关机”命令
  • 接收“重置计数器”命令
  • 每次单击时发送有关当前计数的更新
  • 等等
  • 然后构建另一个外部应用程序,该应用程序连接到主应用程序,并根据从用户获得的控制台输入向主应用程序发送消息。它还将侦听传入的更新并将其显示给用户

    使用外部应用程序调试控制主应用程序非常有帮助,以下原因是其中的一些优势:

  • 无论调试应用程序有多大的缺陷,它都不会影响主应用程序的发布版本
  • 处理控制台管理的所有代码(对于主应用程序来说是多余的)都可以保留在主应用程序之外
  • 用它做两个项目可以让你更容易与其他人合作,只要你们都知道双方之间的协议
  • 实现我建议的功能意味着您可以远程调试应用程序,以防无法访问主应用程序(例如,如果它位于客户站点上)

  • 如果您熟悉socket编程(或者实际上,任何其他类型的IPC机制),您可能希望在应用程序中启用一些侦听器,并开发一个外部应用程序,在与主应用程序通信时为您完成所有“控制台”工作

    假设你有一个应用程序,它有一个按钮和一个文本标签,每次你按下这个按钮,文本标签就会上升1,从1到2到3,以此类推

    您可以将套接字侦听器构建到该应用程序中。当套接字侦听器接受新的传入连接时,您应该启动一个连接线程,该线程可以:

  • 接收“关机”命令
  • 接收“重置计数器”命令
  • 每次单击时发送有关当前计数的更新
  • 等等
  • 然后构建另一个外部应用程序,该应用程序连接到主应用程序,并根据从用户获得的控制台输入向主应用程序发送消息。它还将侦听传入的更新并将其显示给用户

    使用外部应用程序调试控制主应用程序非常有帮助,以下原因是其中的一些优势:

  • 无论调试应用程序有多大的缺陷,它都不会影响主应用程序的发布版本
  • 处理控制台管理的所有代码(对于主应用程序来说是多余的)都可以保留在主应用程序之外
  • 用它做两个项目可以让你更容易与其他人合作,只要你们都知道双方之间的协议
  • 实现我建议的功能意味着您可以远程调试应用程序,以防无法访问主应用程序(例如,如果它位于客户站点上)

  • 您想在非控制台应用程序中添加一种命令提示符控制台,对吗?再加上上面John的评论,您的UI是如何安排的?应用程序通常做什么?控制台是远程的,这是否可以接受(也许更可取?),应用程序是2d游戏。我想从自己的控制台做一些调试的东西。它应该获取输入数据并将其发送到应用程序窗口,获取结果数据并显示。您想在非控制台应用程序中添加一种命令提示控制台,对吗?在上面John的评论中添加,您的UI是如何安排的?应用程序通常做什么?控制台是远程的,这是否可以接受(也许更可取?),应用程序是2d游戏。我想从自己的控制台做一些调试的东西。它应该接收输入数据并将其发送到应用程序窗口,然后取回结果数据并显示出来。+1很难实现,但扩展性很好,并提供了很好的职责分离。我是一个服务器端人员:-)但是的,我的解决方案的一个缺点是在这种情况下实现的复杂性。+1很难实现,但是扩展性很好,并且提供了一个很好的职责分离(我是一个服务器端人员:-)但是是的,我的解决方案的一个缺点是在这种情况下实现的复杂性。