如何嵌入到CINT Windows上的C ++应用程序?

问题描述 投票:1回答:1

我想知道如何嵌入CINT成C ++代码在Windows 7或Windows NT。

Windows7上,我需要写一个C ++程序,它从一个输入文件中读取一个C ++程序,运行它,并计算有很多行代码在运行过程中被处决。我发现,这样做将是最好的方式(1)更新读出的程序代码,以便一旦执行它的命令的计数器值增加(为命令,如退货或打破计数器的值会在执行前增加),和(2)与C ++解释执行更新的程序,读出计数器值一旦返回。我希望其他的方法来解决这个问题。

我在网上搜索,发现CINT将是正确的解释器使用(虽然旧)。我下载了它从根主页,安装了它,就扔TestApp演示,但它构建了我一个链接错误我没有找到如何解决。因此,我需要你的帮助。

最好的是,如果有人能提供给我一个项目,在Windows的C ++代码中嵌入CINT,所以我可以测试我的机器上,并找到我的错误。

我欢迎任何其他输入居停也。

提前致谢

c++ c windows interpreter embedding
1个回答
0
投票

一个更合理的替代方法是当你读它来修改源文件。例如,当这是你输入:

void foo() {
  std::cout << "Hello";
  std::cout << " World" << std::endl;
}

你把它转换成这样:

static int LineCounter = 0;
extern "C" int getLineCounter() { return LineCounter; }

extern "C" void foo() {
  ++LineCounter;
  std::cout << "Hello";
  ++LineCounter;
  std::cout << " World" << std::endl;
}

并传递到编译器。它编译成一个DLL,调用LoadLibraryGetProcAddress("foo")GetProcAddress("getLineCounter")

© www.soinside.com 2019 - 2024. All rights reserved.