我刚刚说过使用以太坊及其新功能,所以也许我的问题听起来不太聪明,但是有什么方法可以从以太坊合约中调用C ++代码?
例如,我可以像that这样从PHP调用C ++
exec("/path/to/your/binary $var1 $var2", $output);
有类似的机制吗?
最佳答案
使用Solidity编码的智能合约将以EVM(以太坊虚拟机)的机器语言代码进行编译。该字节码被注入到区块链中,您可以通过事务/调用与之交互。
EVM内部发生的一切都无法访问EVM外部发生的一切。
您无法将其他语言代码推送到区块链中并期望它能工作。如果要实现这一目标,则必须编写代码,该软件将在C ++代码和区块链上的智能合约之间架起桥梁。但是请记住,只要您无法向区块链的其余部分证明C ++程序所取得的成就,那么智能合约中的信息将一文不值。 EVM有趣的是,每个动作都在区块链上发生,每个人都可以看到正在发生的事情。
但这完全取决于您要实现或构建的目标!