当前位置: 首页 > wzjs >正文

网站重建香飘飘奶茶软文

网站重建,香飘飘奶茶软文,wordpress 建站配置,顺德龙江做网站目录 1. 说明 2. 用法示例 1. 说明 std::transform 是一种多功能算法&#xff0c;用于将已知函数应用于一个或多个范围内的元素&#xff0c;并将结果存储在输出范围内。它主要有两种形式&#xff1a;一元运算和二元运算。具体来说是在 <algorithm> 标头中。函数声明&am…

目录

1. 说明

2. 用法示例


1. 说明

std::transform 是一种多功能算法,用于将已知函数应用于一个或多个范围内的元素并将结果存储在输出范围内。它主要有两种形式:一元运算和二元运算。具体来说是在 <algorithm> 标头中。函数声明:

template< class InputIt, class OutputIt, class UnaryOp >

OutputIt transform( InputIt first1, InputIt last1,

                    OutputIt d_first, UnaryOp unary_op );

(1)

(constexpr since C++20)

template< class ExecutionPolicy,

          class ForwardIt1, class ForwardIt2, class UnaryOp >
ForwardIt2 transform( ExecutionPolicy&& policy,
                      ForwardIt1 first1, ForwardIt1 last1,

                      ForwardIt2 d_first, UnaryOp unary_op );

(2)

(since C++17)

template< class InputIt1, class InputIt2,

          class OutputIt, class BinaryOp >
OutputIt transform( InputIt1 first1, InputIt1 last1, InputIt2 first2,

                    OutputIt d_first, BinaryOp binary_op );

(3)

(constexpr since C++20)

template< class ExecutionPolicy,

          class ForwardIt1, class ForwardIt2,
          
class ForwardIt3, class BinaryOp >
ForwardIt3 transform( ExecutionPolicy&& policy,
                      ForwardIt1 first1, ForwardIt1 last1,
                      ForwardIt2 first2,

                      ForwardIt3 d_first, BinaryOp binary_op );

(4)

(since C++17)

一元操作的函数相当于:Ret fun(const Type &a);

二元操作的函数相当于:Ret fun(const Type1 &a, const Type2 &b);

即传进去的是一个函数对象。

2. 用法示例

#include <algorithm>

#include <cctype>

#include <iomanip>

#include <iostream>

#include <string>

#include <utility>

#include <vector>

 

void print_ordinals(const std::vector<unsigned>& ordinals)

{

    std::cout << "ordinals: ";

    for (unsigned ord : ordinals)

        std::cout << std::setw(3) << ord << ' ';

    std::cout << '\n';

}

 

char to_uppercase(unsigned char c)

{

    return std::toupper(c);

}

 

void to_uppercase_inplace(char& c)

{

    c = to_uppercase(c);

}

 

void unary_transform_example(std::string& hello, std::string world)

{

    // string就地转化为大写形式

 

    std::transform(hello.cbegin(), hello.cend(), hello.begin(), to_uppercase);

    std::cout << "hello = " << std::quoted(hello) << '\n';

 

    // for_each version (see Notes above)

    std::for_each(world.begin(), world.end(), to_uppercase_inplace);

    std::cout << "world = " << std::quoted(world) << '\n';

}

 

void binary_transform_example(std::vector<unsigned> ordinals)

{

    // 将数转换为double

 

    print_ordinals(ordinals);

 

    std::transform(ordinals.cbegin(), ordinals.cend(), ordinals.cbegin(),

                   ordinals.begin(), std::plus<>{});

 //或使用 std::plus<>()

    print_ordinals(ordinals);

}

 

int main()

{

    std::string hello("hello");

    unary_transform_example(hello, "world");

 

    std::vector<unsigned> ordinals;

    std::copy(hello.cbegin(), hello.cend(), std::back_inserter(ordinals));

    binary_transform_example(std::move(ordinals));

}

输出:

hello = "HELLO"

world = "WORLD"

ordinals:  72  69  76  76  79

ordinals: 144 138 152 152 158

说明:std::quoted 是 C++14 中引入的 I/O 操作符,属于 <iomanip> 库的一部分。其主要目的是简化使用流进行输入输出操作时对带引号的字符串的处理。

http://www.dtcms.com/wzjs/117239.html

相关文章:

  • 建设网站培训班查询关键词排名软件
  • 做网站的免费空间seo经验
  • 株洲做网站哪家好全国疫情高峰感染进度
  • 昆山网站公司网站推广和精准seo
  • 西安网站建设设计的好公司店铺seo是什么意思
  • 网站认证打的钱怎么做分录百度知道问答平台
  • 网站建设 律师友情链接交换系统
  • 如何对网站做实证分析合肥网络推广公司
  • 会员制网站建设教程seo搜索引擎优化服务
  • 企业网站设计与优化搜索引擎的关键词优化
  • 给一个网站如何做推广微博关键词排名优化
  • 重庆网站建设公司那家好seo公司外包
  • 烟台网站排名系统网站开发培训
  • 漳州最专业的网站建设公司十大广告联盟
  • 宁海哪家做网站比较可靠怎么把产品推广到各大平台
  • 个人网站设计及实现长春视频剪辑培训机构
  • 长业建设集团有限公司网站数字营销软件
  • 誉字号网站白云百度seo公司
  • 苏州餐饮 网站建设深圳全网推广效果如何
  • 怎么做视频解析网站吗网站底部友情链接代码
  • 网站建设都需要什么技术人员百度seo工作室
  • 不知道我自己的网站的ftp账号搜外友链
  • 网站暂时关闭 seo百度怎样免费发布信息
  • 咸阳学校网站建设报价湖南营销型网站建设
  • 设计找图网站杭州疫情最新消息
  • 政府通用网站html模板下载视频剪辑培训班学费一般多少
  • 学习如何做网站网站域名解析ip
  • 青岛建韩国网站的公司百度移动端关键词优化
  • 备案注销网站还有吗网站关键词查询
  • 网站优化公司电话提供seo服务