免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3107 | 回复: 6
打印 上一主题 下一主题

大虾们,看看这个问题如何处理 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-06-04 22:45 |只看该作者 |倒序浏览
//T2.h

#pragma once
class T2
{
public:
        T2(void);
        ~T2(void);
        int foo(int x);
        int foo(int& x);

};



//T2.cpp

#include "StdAfx.h"
#include "T2.h"


T2::T2(void)
{
}


T2::~T2(void)
{
}


int T2::foo(int x)
{
        return 0;
}


int T2::foo(int& x)
{
        return 0;
}



//Test.cpp
// testparam.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include "T2.h"


int _tmain(int argc, _TCHAR* argv[])
{
        T2 t;
        int x = 0;
        t.foo((int)x);
        t.foo((int&)x);

        return 0;
}

论坛徽章:
2
戌狗
日期:2013-11-06 17:35:36寅虎
日期:2014-10-20 23:12:29
2 [报告]
发表于 2011-06-04 22:48 |只看该作者
小昭果然是波斯圣女 小生听不懂啊。。

论坛徽章:
0
3 [报告]
发表于 2011-06-05 00:37 |只看该作者
大哥阿,你的问题是啥阿??

论坛徽章:
0
4 [报告]
发表于 2011-06-06 19:39 |只看该作者
当定义两个如下形式的函数重载时:
int foo(int x);
int foo(int& x);

调用之:

int c=5;
foo(c);

试问:编译器如何判断你调用的那个函数呢?好像两个都可以解释过呀,所以VC2010中,不允许编译。
想问下,大侠们如何处理这个问题

论坛徽章:
0
5 [报告]
发表于 2011-06-06 19:56 |只看该作者
只有int和int&差别是不能重载的

论坛徽章:
0
6 [报告]
发表于 2011-06-06 20:11 |只看该作者
按理说可以重载的吧,因为非const引用不能绑定整形常量。。。不过不知标准怎么定的

论坛徽章:
0
7 [报告]
发表于 2011-06-08 09:26 |只看该作者
有熟悉标准的大虾吗
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP