Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在C中自动实现接口?_C#_Visual Studio_Intellisense - Fatal编程技术网

C# 如何在C中自动实现接口?

C# 如何在C中自动实现接口?,c#,visual-studio,intellisense,C#,Visual Studio,Intellisense,以前在VisualStudio中,如果您使用接口声明了一个类,您可以将光标放在接口上,右键单击它并选择ImplementInterface。对于VS 2008的类似问题 我开始从事一个项目,该项目定义了许多将与SimpleInjector一起使用的接口。现在,当我开始编写我的服务类时,我注意到ImplementInterface菜单选项不见了 如何像VS2008那样实现所有必要的方法存根 很抱歉,如果这是重复的,但是,我在任何地方都找不到这个答案 编辑注释-2018年8月17日 多年来,这一直是

以前在VisualStudio中,如果您使用接口声明了一个类,您可以将光标放在接口上,右键单击它并选择ImplementInterface。对于VS 2008的类似问题

我开始从事一个项目,该项目定义了许多将与SimpleInjector一起使用的接口。现在,当我开始编写我的服务类时,我注意到ImplementInterface菜单选项不见了

如何像VS2008那样实现所有必要的方法存根

很抱歉,如果这是重复的,但是,我在任何地方都找不到这个答案

编辑注释-2018年8月17日

多年来,这一直是一个热门问题。我已经更新了这个的标题和标签,这样它就涵盖了C和VisualStudio的所有相关版本


这最终是我的编码失败。与类非常相似,由VS生成的接口没有定义为公共接口。您必须使用公共访问器手动修改接口声明,因为VS不会自动添加它。很容易忘记这一步,因为您不必在接口中设置成员修饰符,因为根据定义,它们都是公共的。

这一点没有改变。您只需将鼠标悬停在类中的接口名称上,就会显示蓝色下划线栏,为您提供实现接口的选项。如果没有出现蓝色下划线,请检查以确保使用所引用的程序集和名称空间可以访问接口

查看接口名称时,应该会看到一条蓝色下划线:

如果将鼠标悬停在其上,将出现一个下拉菜单,允许您实现该界面:


将光标放在界面文本中冒号后面的某个位置,然后按Ctrl+。

它似乎仍然在那里。仅供参考,VS2010中也存在此功能。实际上,我还没有在VS2012中尝试使用它,因为我通常不会太频繁地利用该功能,所以我无法评论它是否存在。但根据我的经验,如果您的代码中同时存在其他编译错误,或者缺少相关的程序集引用,有时类似的选项不会出现,因为它无法确定它是什么或您正在做什么。与往常一样,它对我有效。右键单击接口名称时,机具接口是上下文菜单中可用的第一个菜单项。当然是VS2012。我想在2010年VS中实现IComparable接口,但仍然没有显示蓝色标签。。。该死的!调试时也没有错误。我错过了什么?发现了问题。有两种类型的接口。一个用于使用泛型的类型安全,另一个用于非类型安全。我必须使用类型安全才能看到蓝色标签。但我怀疑,为什么会这样?啊,我失败了。这是因为我在定义接口时犯了一个错误。我没有收到任何来自Intellisense的警告。我修复了接口,出现了接口声明中的下拉选项。@RLH:我可以猜一下吗?公共类imyinterfaceiacidentallydclaredasclass{}?是的。我的声明总是有偏差。接口必须定义为public,方法没有公共/私有声明。蓝线可能出现在类名下,而不是接口下,但您仍然可以右键单击接口并选择implement-它的工作原理相同