gpt4 book ai didi

c++ - 如何创建返回类型为 1) true/false 和 2) 动态数据的对象

转载 作者:太空宇宙 更新时间:2023-11-04 12:09:42 25 4
gpt4 key购买 nike

就像方法 mysql_fetch_array() 的返回类型既是 bool 值,又是数值数组和关联数组,您可以在其中评估 sql 查询是否成功,如果是,则将返回数据存储到数组中,然后访问相同的数组对象 $row 并显示如下所示的行:

while($row = mysql_fetch_array($result)){
echo $row['name']. " - ". $row['age'];
echo "<br />";
}

因此您既可以测试 $row 变量是真还是假,然后访问 $row 变量(在本例中是一个数组)并能够对其进行操作。

我想在 C++ 中做同样的事情

我正在尝试创建一个方法,该方法将根据方法内的一些条件返回枚举值,如果该方法为真,则执行其他操作。问题是我不知道如何创建这种数据类型。我怎样才能做到这一点?

最佳答案

您要找的是std::pair .它包含两个值。

#include <iostream>
#include <utility>

std::pair<bool, int> foo (int i)
{
std::pair<bool, int> ret;

if (i != 5)
{
ret.first = true;
ret.second = i;
}

else
{
ret.first = false;
ret.second = 0;
}

return ret;
}

int main()
{
if (foo (6).first)
std::cout << foo (6).second << '\n'; //prints

if (foo (5).first)
std::cout << foo (5).second; //doesn't print
}

编辑:
啊,看来这是我第一次处理 std::pair ,我忽略了一些东西。你可以使用 std::make_pair (true, i)并返回它以减少困惑的功能。返回std::pair<bool, int> (true, i)也应该可以正常工作。

关于c++ - 如何创建返回类型为 1) true/false 和 2) 动态数据的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10343546/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com