c++ - 将数组的元素传递给c ++中的函数
问题描述
我需要将结构数组的元素传递给函数。但我还是做不到。
Person 是一个嵌套结构。
//define Address structure
struct Address
{
string Street;
string City;
string PostalCode;
};
//define Person structure
struct Person
{
string Name;
int Age;
float Salary;
struct Address Address;
};
// How I invoque the function
cout << "Address: " << ConcateAddress(persons[i].Address) << endl;
// Return a concatenated string with completed address of persion
string ConcateAddress(struct Address address)
{
string adressFinal= address.Street + " " + address.PostalCode;
if(!address.City.empty()){
adressFinal = adressFinal + ", "+ address.City;
}
}
解决方案
您必须在函数定义的末尾添加一个 return 语句。您已成功将数组元素传递给函数,但您的函数不返回任何值。
string ConcateAddress(struct Address address)
{
string adressFinal= address.Street + " " + address.PostalCode;
if(!address.City.empty()){
adressFinal = adressFinal + ", "+ address.City;
}
return adressFinal; //return statement
}
推荐阅读
- css - CSS 伪:溢出后
- reactjs - 最后一个元素未添加到状态元素的数组中
- python - srun(或 mpirun)如何在不同的集群节点上同步执行环境?
- testlink - 如何卸载 Bitnami 测试链接
- javascript - 单击按钮时更改图片JQuery
- database - mongodb没有名为restore的角色
- php - PHP 文件不会从 HTML 按钮运行,而是会自行运行
- java - Java groupingBy:对多个字段求和
- swift - 安装 Onesignal Cocoapod
- node.js - 在带有 ES 模块的 Node.js 中使用相对路径导入