• c++的新型数组


    #include<iostream>
    #include<array>
    #include<vector>


    char buffer[512] = {0};//初始化静态区
    int N(5);




    void main(){


    std::array<std::array<int,5>, 6> myint = {1,2,3,4,5};//这个是在栈上,会发生栈溢出




    std::vector<std::vector<int>> myvector;//动态数组的嵌套




    std::vector<std::string> myvector1;

    myvector1.push_back("呵呵呵呵");
    myvector1.push_back("呵呵呵呵1");
    myvector1.push_back("呵呵呵呵2");
    //删除的话可以用
    myvector1.erase(myvector1.begin());//删除第一个元素
    //删除所有的是
    //myvector1.clear();


    std::vector<std::string>::iterator start, end;//这个是定义迭代器开始和结束


    start = myvector1.begin();//开始的位置
    end = myvector1.end();//结束的位置
    for (;start!=end;start++){
    std::cout << start->c_str() << std::endl;//输出存入的值


    }




    //lamdbda表达式
    std::vector<int> de;
    de.push_back(1);
    de.push_back(2);
    int res;//初始化结果
    std::for_each(de.begin(), de.end(), [&res](int x){res = +x; });//计算相加之后的和








    //for (int i = 0; i < 100; i++){
    // myvector.push_back(i);//往数组中加入数据,也叫做动态的数组//在堆上
    //}


    //数组的嵌套使用,打印输出
    for (std::array<int, 5> mint1 : myint){
    for (int a : mint1){
    std::cout << a << std::endl;
    }
    }




    //多元数组


    std::tuple<int, double, char, const char *> mytuple(1,1,'1',"sin");
    for (int i = 0; i < mytuple._Mysize;i++){
    //std:: cout<< std::get<i>(mytuple) << std::endl;
    //上面的那句话是错误的,但是把i改为1,2,3他就可以执行,但是不知道为什么不能直接给变量


    }


    //分配指定的内存
    double *pdd;
    pdd= new (buffer)double[N];//在静态区的空间






    std::cin.get();//暂停的效果
    }
  • 相关阅读:
    mouse without borders无界鼠标使用教程
    动态令牌-(OTP,HOTP,TOTP)-基本原理
    sha256C代码例子
    常用的前端设计工具分享
    PHP获取搜索引擎关键字来源(百度、谷歌、雅虎、搜狗、搜搜、必应、有道)
    为 Web 设计师准备的 25+ 款扁平 UI 工具包
    万能字段使用技巧整理
    css中overflow:hidden的属性 可能会导致js下拉菜单无法显示
    QQ空间g_tk加密算法PHP版
    QQ聊天机器人for PHP版 (登录,收、发消息)
  • 原文地址:https://www.cnblogs.com/csnd/p/16675651.html
Copyright © 2020-2023  润新知