IntelliSense 无法重载仅按返回类型区分的函数

IntelliSense:无法重载仅按返回类型区分的函数       d:\programfiles (x86)\microsoft sdks\windows\v7.0a\include\winbase.h         3540

在VS2010下用C语言写Windows系统服务,从另一个c#的项目中Copy过来一段代码,修改后再编译,就产生了这个错误!

在网上搜索得到的答案是:“无法重载仅按返回类型区分的函数”这种情况一般只会发生在有同名函数的情况下,但是我那段代码里却没有同名函数。

根据以往的经验,发生怪异的问题,不妨试试重启VS试试,重启之后,果然有惊喜!

单击是,再重新编译,问题消失!

但是之后又试着使用HEdit对文件换行符进行修改,都没能再复现些问题。

IntelliSense 无法重载仅按返回类型区分的函数

时间: 2024-08-07 00:03:05

IntelliSense 无法重载仅按返回类型区分的函数的相关文章

仅返回类型不同的函数,在C++中如何实现重载?

C++支持函数重载,所谓重载就是在同一命名空间内,函数名相同,参数不同(参数个数或参数类型不同)的函数可以共存.但是若参数和函数名相同的话,编译器会报错不能重载.但是现实中,有时候仅仅需要返回类型不同的的函数,而这种情况C++又不支持重载,如: [cpp] view plain copy typedef struct TData { int a; int b; } TData; class CTest { public: TData &getData() { return data; } con

IntelliSense 无法仅由函数的返回类型重装分辨

IntelliSense:无法仅由函数的返回类型重装分辨       d:\programfiles (x86)\microsoft sdks\windows\v7.0a\include\winbase.h         3540 在VS2010下用C语言写Windows系统服务,从还有一个c#的项目中Copy过来一段代码,改动后再编译.就产生了这个错误! 在网上搜索得到的答案是:"无法重载仅按返回类型区分的函数"这样的情况一般仅仅会发生在有同名函数的情况下.可是我那段代码里却没有同

声明返回数组指针的函数

时间:2014.05.18 地点:基地 ------------------------------------------------------------------------ 一.基本知识 常识:数组不能被拷贝,函数不能返回数组,只能返回数组的指针或者引用. typedet int arr[10]; //arr是类型别名,表示的类型含有10个整数的数组 上述语句等效于 using arr=int[10] 在来复习几个基础知识 int arr[10]; //arr是一个含有10个整数的数

方法重载,为什么不能根据返回类型来区分?

详见:四 一.方法重载简述 任何程序设计语言都具备一项重要特性就是对名字的运用.当创建一个对象时,也就给此对象分配到的存储空间取一个名字. 所谓方法,则是给某个动作取的名字.通过这个名字,你可以引用所有的对象和方法.名字起的好可以使系统更易于理解和修改. 在日常生活中,相同的词可以表达多种不同的含义——它们被“重载”了.特别是含义之间的差别很小时,这种方式十分有用.比起“以洗衬衫的方式洗衬衫”.“以洗狗的方式洗狗”.“以洗车的方式洗车”,“洗洗衬衫”.“洗洗狗”.“洗洗车”显得更加简洁和方便.

重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分?

方法的重载和重写都是实现多态的方式,区别在于前者实现的是编译时的多态性,而后者实现的是运行时的多态性.重载发生在一个类中,同名的方法如果有不同的参数列表(参数类型不同.参数个数不同或者二者都不同)则视为重载:重写发生在子类与父类之间,重写要求子类被重写方法与父类被重写方法有相同的返回类型,比父类被重写方法更好访问,不能比父类被重写方法声明更多的异常(里氏代换原则).重载对返回类型没有特殊的要求.

为什么不能根据返回类型来区分重载

方法重载:同一个类中的多个方法有相同的名字,但这些方法的参数列表不同,参数的数量或参数类型不能完全相同. 方法重写:存在子父类之间的,,子类定义的方法与父类中的方法具有相同的方法名字,以及相同的参数表和相同的返回类型. 函数的返回值只是作为函数运行之后的一个“状态” ,并不能作为某个方法的“标识” . 原文地址:https://www.cnblogs.com/cykfory/p/10430291.html

Java常见面试题02-方法重写和方法重载的区别?方法重载能改变返回值类型吗?

方法重写和方法重载的区别?方法重载能改变返回值类型吗?       A:Override方法重写和Overload方法重载的区别? Overload是否可以改变返回值类型?可以 方法重写 •  子类中出现了和父类中一模一样的方法声明,也被称为方法覆盖,方法复写. •  使用特点: •   如果方法名不同,就调用对应的方法 •   如果方法名相同,最终使用的是子类自己的 父类方法重写格式:super.父类成员方法名 •  方法重写的注意事项   父类中私有方法不能被重写   子类重写父类方法时,访

C++ template —— 类型区分(十一)

前面的博文介绍了模板的基础,深入模板特性,模板和设计的一些内容.从这篇开始,我们介绍一些高级模板设计,开发某些相对较小.并且互相独立的功能,而且对于这些简单功能而言,模板是最好的实现方法:(1)一个用于类型区分的框架:(2)智能指针(3)tuple(4)仿函数------------------------------------------------------------------------------------------------------------ 第19章 类型区分本章

Java中的方法(形参及实参)return返回类型

如何定义 Java 中的方法 所谓方法,就是用来解决一类问题的代码的有序组合,是一个功能模块. 一般情况下,定义一个方法的语法是: 其中: 1. 访问修饰符:方法允许被访问的权限范围, 可以是 public.protected.private 甚至可以省略 ,其中 public 表示该方法可以被其他任何代码调用,其他几种修饰符的使用在后面章节中会详细讲解滴 2. 返回值类型:方法返回值的类型,如果方法不返回任何值,则返回值类型指定为 void :如果方法具有返回值,则需要指定返回值的类型,并且在