STL 库函数测试

学习:

1.深入理解了C++里引用:
   A:引用的定义:数据类型名 &引用名=变量名;(引用不同于指针之处是:引用在声明的时候必须同时初始化)

   B.引用只是变量的一个别名,在操作引用和操作原变量名的时候都是操作内存区域上的同一个区域。

   C.引用的应用:

         a.作为函数的参数参与传值,类似于c语言指针的作用。这里才明C语言中指针传值的优点:相对于通过形参传值,c指针是直接访问需要做变化的内存,并直接对齐做改,

            而不是复制一份到目前开的函数栈中来。
         b.引用作为函数返回值,也是为了避免复制产生临时变量而效率降低。函数返回值返回的引用的原变量不能是局部变量,那样会产生野引用的情况。
  2.其余学习内容见代码注解:            
我的代码:
#include<iostream>
#include<algorithm>
#include<vector>
#include<cassert>    //assert
#include<ctime>
#include<cstdlib>     //rand(),srand()
using namespace std;

void rand_make(vector<int> &v){    //一个容器的引用
     for(int i=0;i < 100;i++){
         int x=((double)(rand())/RAND_MAX)*1000000;    //取随机数。因为随机数函数rand()的最大随机数值可能只有2^15-1,所以用这种方法来取随机数
         v.push_back(x);
     }
}

int main(void){
    srand(time(0));    //一个程序只需要给一次种子<span id="transmark"></span>
    vector<int> v;
    rand_make(v);
    sort(v.begin(),v.end());
    for(int i=0;i < v.size()-1;i++) assert(v[i] < v[i+1]);    //assert(expresiion);
    cout << endl << RAND_MAX << endl;
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值