2 luoyeff luoyeff 于 2015.05.25 17:34 提问

c++运算符重载冲突问题

在头文件中加入#include < memory >以后,很多运算符都提示错误了,比如cin>>n;里的>>这种。
图片说明
去掉头memory头文件就都好了。怎么避免这个冲突?

9个回答

u010572380
u010572380   2015.05.25 17:47

可能是编译器不支持memory吧,你用memory是要用来分配内存麽。

tangsha928
tangsha928   2015.05.25 17:51

我怎么没有遇到这种问题,你得把问题再描述清楚一点

qq_17246605
qq_17246605   2015.05.25 18:22

额,for循环里不应该用的是;分隔么?
要不试试
#include

qq_17246605
qq_17246605 我大概以前遇到过这种情况,没记错的话,我当时用的头文件是<stdio.h>,后来改成<iostream>就差不多了,还有,引用了iostream之后,memset什么的有时也是可以直接用的,不用引用memory= =
2 年多之前 回复
qq_17246605
qq_17246605 #include<iostream>
2 年多之前 回复
u012377333
u012377333   Rxr 2015.05.25 19:16

使用命名空间,指定定义域就ok了

wangyaninglm
wangyaninglm   Ds   Rxr 2015.05.25 19:27

看你用stdio还是iostream了,后面要加上std命名空间
当然,还有就是for循环里面你写的就有问题

u012271952
u012271952   2015.05.25 20:14

老兄,for循环写错了,注意细节啊,其实吧,这个问题不难解决,首先得明白头文件的作用。头文件主要是对函数、全局变量的声明和一些宏的定义,.h文件是不参与编译的,#include宏的作用就是预处理的时候在使用这句话的地方用.h文件的内容替换掉这句话。之所以出现你说的问题,我估计
是你没有#include所必须的头文件。加上#include 后,肯定不会出现你说的问题啦。

tianyang2008
tianyang2008   2015.05.26 13:59

for(i=0;i<n;i++) 应该这么写。。。

jianzhi6
jianzhi6   2015.05.26 19:07

把for循环写对了再说。。。。。。然后就是最好不要在一个文件里同时用c和c++的输出输入格式

xy707707
xy707707   2015.05.27 17:20

老兄,for循环写错了,注意细节啊,其实吧,这个问题不难解决,首先得明白头文件的作用。头文件主要是对函数、全局变量的声明和一些宏的定义,.h文件是不参与编译的,#include宏的作用就是预处理的时候在使用这句话的地方用.h文件的内容替换掉这句话。之所以出现你说的问题,我估计
是你没有#include所必须的头文件。加上#include 后,肯定不会出现你说的问题啦。

Csdn user default icon
上传中...
上传图片
插入图片