c++-在for_each调用标准库函数对象multiplies后为何下列输出没变

问题描述

在for_each调用标准库函数对象multiplies后为何下列输出没变
#include
#include
#include
#include
using namespace std::placeholders;
using namespace std;
int main()
{
vectorvec;
int i;
while(cin>>i)
vec.push_back(i);
for_each(vec.begin()vec.end()bind(multiplies()_12));
// for_each(vec.begin()vec.end()->int{a=a*2; return a;});
for_each(vec.begin()vec.end(){cout<<a<<"" "";});
}
为何输出没有变为2倍,改成lambda表达式也不变?

解决方案

对象拷贝,没有修改回原值。

解决方案二:
代码黏贴上去部分不见了;关键是for_each(vec.begin()vec.end()bind(multiplies()_12));后为什么输出没变?

时间: 2024-09-18 13:32:35

c++-在for_each调用标准库函数对象multiplies后为何下列输出没变的相关文章

使用标准库函数对象的例子

14.42 使用标准库函数对象及适配器定义一条表达式,令其 1 统计打于1024的值有多少个. 2 找到第一个不等于pooh的字符串 3 将所有的值乘以2 14.43 使用标准库函数对象判断一个给定的int值是否能被int容器中的所有元素整除 #include<iostream> #include<functional> #include<string> #include<vector> #include<algorithm> using nam

关于对象序列化后,所占数据变大,怎么解决?

问题描述 程序描述:我需要序列化一批对象,为什么序列化后的对象比实际上在内存中的对象占的字节要大,如果我要保持序列化后的对象所占的字节数和对象在内存中所占的字节数一样的化(未序列化之前),我需要怎么调整序列化?///要序列化的类:[Serializable]publicclassMyObject{publicintN1{get;set;}}//序列化50组类,一次递增(第一次,序列化一个,第二次两个,依次递增)for(intj=1;j<=50;j++){List<MyObject>lis

标准会话对象——StandardSession

Tomcat使用了一个StandardSession对象用来表示标准的会话结构,用来封装需要存储的状态信息.标准会话对象StandardSession实现了Session.Serializable.HttpSession等几个接口,为什么需要实现这几个接口呢?Session接口定义了tomcat内部用来操作会话的一些方法:Serializable则是序列化接口,实现它是为了方便传输及持久化:HTTPSession是Servlet规范中为会话操作而定义的一些方法,作为一个标准web容器实现它是必然

hook-AIX下如何劫持标准库函数

问题描述 AIX下如何劫持标准库函数 AIX系统下有一个程序(没有源码),发生了内存泄露.想写一个程序劫持系统函数malloc和free,来记录内存泄露的信息.在linux下可以使用ld_preload变量实现,请问在AIX下有什么方法实现这一功能呢?

接口-php怎么调用wcf服务,调用参数是对象参数。

问题描述 php怎么调用wcf服务,调用参数是对象参数. .net做的wcf接口,部署IIS上访问是可以的如图: 我用php soap调用测试,是否能通,也是可以的: <?php header('Content-Type: text/plain'); $client = new SoapClient('http://testu.sh.jinri.com/Flight.User.SOA/SuggestService.svc?wsdl'); echo ' '; echo "提供的方法n&quo

arm printf-__use_no_semihosting 与调用C库函数冲突有什么解决方法

问题描述 __use_no_semihosting 与调用C库函数冲突有什么解决方法 在已经移植freetype代码(使用了大量的C库函数)中,将printf硬件重定向到串口后,#pragma import(__use_no_semihosting_swi)与调用C库函数冲突,错误如下:ERROR:L6915E:Library reports error:__use_no_semihosting_swi was requestedbut _sys_open was referenced 解决方案

c++-不调用任何库函数如何实现stat_word.求大神打救

问题描述 不调用任何库函数如何实现stat_word.求大神打救 请保证代码工整,关键部分请用注释对代码逻辑进行说明 不调用任何库函数实现stat_word,该函数的功能是从字符串str中统计单词个数,str完全由英文字母及空格符组成,连续出现的若干个非空格字符即为一个单词.(5分) int stat_word(const char* str); 解决方案 #include "stdafx.h" #include <iostream> #include <vector

static-类的方法调用与类对象的方法调用的区别?

问题描述 类的方法调用与类对象的方法调用的区别? public class A { public static A a=new A(); public void text() {} } public class B { A.a.test(); A a1=new A(); a1.test() //这两种的调用方法的差别请问是什么啊? public static int c; public int c1; //就是一个用Static变量和没有用static声明一个变量的差别吗? //如果非得那么实现

qt隐式调用mysql库函数

问题描述 qt隐式调用mysql库函数 系统是64位,安装的qt也是64位的,vs2013也是64位的,mysql在c盘,采用隐式调用,用qt编译项目的时候,已经在Pro中添加了LIBS += -LC:mysqllib -llibmysql,在头文件中也写了#include ,可是项目中有mysql_init的时候,编译时候报错无法解析的外部符号mysql_init,请教是什么问题啊???? 解决方案 http://blog.csdn.net/wang19870102/article/detai