Tuples Herb Sutter(陶章志译)[2]

[入库:2005年8月18日] [更新:2007年3月25日]

本文简介:选择自 taozhangzhi9 的 blog

tuple types:一个简单motivating例子

假如你想用一个函数返回多于一个返回值,例如:

// yields a quotient only
//
int integerdivide( int n, int d ) {
  return n / d;
}
 
// sample use:
cout << "quotient = " << integerdivide( 5, 4 );
 
  在这个实现中有什么错误吗? 也许没有,毕竟在编译器中,我们内嵌了整数除法。包括结果也能够四舍五入。
  但是,如果我们想做更多。特别,想提供一个方法得到除法其他的信息,例如除法的余数。如果没有改变函数的结构。那么,实现这样的要求的函数不是一件容易的事情。
一种办法我们在函数中加入一个输出变量。
// example 1(b): integer division,
// yielding a quotient and remainder,
// one as the return value and one via
// an output parameter
//
int integerdivide( int n, int d, int& r ) {
  r = n % d;
  return n / d;
}
// sample use:
int remainder;
int quotient = integerdivide( 5, 4, remainder );
cout << "quotient = " << quotient
<< "remainder = " << remainder;
 
本文关键:Tuples Herb Sutter(陶章志译) C++
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top