我曾经使用PHP,我喜欢PHP传递和返回值的方式,非常简单。
现在我转向 C++ 以获得更高的性能,但发现很难传递和返回二维数组,更不用说一些更复杂的数据结构了。
- 我曾经认为 JSON 可能是一种选择,但是这样你每次都必须编码和解码,不切实际。
- 目前我正在使用指针,但这不是很方便。
- 然后我尝试了 STL 向量,还是不满意,STL 向量使用起来更安全舒适一些,但仍然需要手动迭代数组,我想要的是更灵活的策略来处理这类任务
- 我尝试使用类/结构来保存数据,然后传递和返回,但是每当传递不同类型的数据结构时,我都必须定义一个新结构。
那么,函数间数据交换的最佳选择是什么?专业人士,有什么建议吗?
编辑:
举个例子:
string function(string data){
//do something
return result;
}
如果这个结果是这样的:
{
"key1"=>{"key11"=>"value1"},
"key2"=>{"key21"=>"value2"},
"key3"=>{"key31"=>"value3","key32"=>"value32"}
}
用指针传递它太复杂了,不是吗?使用 php,您可以使用多个 foreach 语句轻松处理嵌套数组。
编辑2:
简单来说,如何交换未知长度和维度的嵌套数组?
编辑3:
我正在尝试找到处理常见编程任务的 cpp 方式。而函数之间的数据交换非常重要。
- 在 php 中,我可以轻松地处理具有多个 foreach 的嵌套数组并轻松返回数组。
- 但是用cpp
- 我必须返回结果数组指针或直接操作引用的向量
- 我需要将数组长度传递给函数
- 当数据结构复杂时,很难从数组中获取值。