zoukankan      html  css  js  c++  java
  • 函数:按引用传递函数参数进行操作

    #include <iostream>
    #include <string>
    
    struct free_throws
    {
    	std::string name;
    	int made;
    	int attempts;
    	float percent;
    };
    
    void display(const free_throws & ft);
    void set_pc(free_throws & ft);
    free_throws & accumulate(free_throws & target, const free_throws & source);
    
    int main(void)
    {
    	using std::cout;
    	free_throws one = {"Ifelsa Branch", 13, 14};
    	free_throws two = {"Andor Knott", 10, 16};
    	free_throws three = {"Minnie Max", 7, 9};
    	free_throws four = {"Whily Looper", 5, 9};
    	free_throws five = {"Long Long", 6, 14};
    	free_throws team = {"Throwgoods", 0, 0};
    	
    	free_throws dup;
    	
    	set_pc(one);
    	display(one);
    	accumulate(team, one);
    	display(team);
    	
    	display(accumulate(team, two));
    	accumulate(accumulate(team, three), four);
    	display(team);
    	
    	dup = accumulate(team, five);
    	
    	cout << "Displaying team:
    ";
    	display(team);
    	cout << "Displaying dup after assignment:
    ";
    	display(dup);
    	set_pc(four);
    	
    	accumulate(dup, five) = four;
    	cout << "Displaying dup after ill-advised assignment:
    ";
    	display(dup);
    	return 0;
    }
    void display(const free_throws & ft)
    {
    	using std::cout;
    	cout << "Name: " << ft.name << '
    ';
    	cout << " Made: " << ft.made << '	';
    	cout << "Attempts: " << ft.attempts << '	';
    	cout << "Percent: " << ft.percent << '
    ';
    }
    void set_pc(free_throws & ft)
    {
    	if(ft.attempts != 0)
    		ft.percent =100.0f * float(ft.made)/float(ft.attempts);
    	else
    		ft.percent = 0;
    }
    free_throws & accumulate(free_throws & target, const free_throws & source)
    {
    	target.attempts += source.attempts;
    	target.made += source.made;
    	set_pc(target);
    	return target;
    }

  • 相关阅读:
    斐波那契数列变形
    poj 1061 青蛙的约会+拓展欧几里得+题解
    Leading and Trailing LightOJ
    HDU-1576 A/B 基础数论+解题报告
    swal() 弹出层的用法
    jqurey.running.min.js运动的字体效果
    echarts中dataZoom的使用
    echarts动态添加数据
    设备适配尺寸
    sublime Text3 插件
  • 原文地址:https://www.cnblogs.com/WALLACE-S-BOOK/p/9732346.html
Copyright © 2011-2022 走看看