#pragma once
#include<iostream>
#include<string>
using namespace std;
程序的头文件 prectise.h
有些时候,我们需要c++的函数返回多个程序代码的过程值,两个以上。
但是一般而言,C++仅允许返回一个值,或者说一个参数;当然,向量和矩阵可以返回两个以上的值,通过传指针指向多个值的头文件,可以实现两个以上参数传递。
本文不考虑使用指针的方法,力求在对数值开根过程中返回根和程序迭代次数。
程序的输入是待开根的数值,输出开根号的结果,和迭代的次数,主程序的代码如下:
#include "prectice.h"
inline pair<double, int> square(double x) {
double g = x;
std::pair<double, int> results;
int i = 0;
while (abs(g*g - x) > 0.000001)
{
g = (g + x / g) / 2;
++i;
}
results = make_pair(g,i);
return results;
};
int main()
{
std::pair<double, int> results;
double xx = 2;
results =square(2);
cout << results.second << results.first << endl;
system("Pause");
return 0;
};
使用C++中的Pair可实现一个函数返回两种不同类型的值,但并不使用指针/向量和矩阵等方法。
|