-1

我看过一个头文件 cpptcl.h 。合法吗?另外,我在哪里可以找到一个很好的快速入门示例。我正在使用 tcl/tk 来设计用户界面,并希望通过在 c++ 代码中分叉来调用脚本。

4

1 回答 1

4

如何将用 c++ 编写的后端与 tcl/tk 用户界面连接起来?

您的问题是特定于操作系统的。因为(在许多(但不是全部)操作系统上)任何软件应用程序都可以由两个(或更多)进程组成,这些进程通过使用进程间通信设施进行协作,并且这种方法(通常通过使用“后端”一词来暗示) 具有从进程隔离中获利的巨大优势。阅读有关软件管道管道套接字的更多信息。它们可能在您的目标操作系统上可用。为了更好地了解操作系统,我强烈建议您阅读操作系统:三个简单的部分(可免费下载)。

如果您正在为 Windows 编码,请学习并学习WinAPI。如果您正在为 Linux 编码,请通过阅读ALP并查看syscalls(2)以及从该页面引用的每个系统调用来研究其编程 API。man这两个文档对于编写进程间通信代码都很有用。

您可以通过Tcl / Tk库(或代码)与您的核心、特定于应用程序的 C++ 代码链接来编写单个可执行应用程序,但如果您这样做,您将不会谈论任何后端(或前端)。 end),而是代码的特定于应用程序的层和GUI用户界面(抽象)层

最后,Tcl/Tk 似乎对于 GUI 开发来说已经过时了。今天,一个好的 C++ GUI 工具包Qt,它比 Tcl/Tk (在功能和界面外观质量方面)要好得多。

我看过一个库 cpptcl.h。

不是一个,而是一个头文件(用于 C 和 C++预处理器),声明了某个库的接口。我猜相应的库将是一个动态链接库,例如 Linux 上的一些lib*.so ELF共享对象,或者 Windows 上的一些*.dll DLL

是否合法

我想你的意思是“它合法吗”?肯定是的。或“遵守规则”(当然是的)。您可以询问该库的法律地位,此类问题的正确措辞是询问其软件许可证。Tcl/Tk 是具有一些BSD 许可证的开源软件。

我在哪里可以找到一个很好的快速入门示例。

Tk 和 Qt 都有出色的文档(您应该在几天内阅读...)。Tk 的文档令人印象深刻(Qt 的文档也是如此)。我建议先阅读Tk 教程(如果您选择 Qt,请先阅读其Qt 入门文档)。大多数 GUI 软件都涉及一些事件循环(由 Qt 提供,也可能由 Tk 提供)。您可能应该有从该事件循环到应用层的 C++ 函数的回调(并且 Qt 使用信号和槽)。

于 2019-05-13T06:00:10.477 回答