Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.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# - Fatal编程技术网

C# 为什么部分方法必须是无效的?

C# 为什么部分方法必须是无效的?,c#,C#,我目前正在学习C#,这本书叫做《开始Visual C#2010》,我在这一章中讨论了部分方法和类的不同方面和特点 引用这本书: 考虑一下为什么分部方法不能有返回类型。如果你能回答你的问题 如果您感到满意,您可以确保完全理解此主题-因此这是留给您的练习。” 这就是我被卡住的地方。 我能想到的唯一原因是,当方法的返回值被分配给代码中的某个对象时,如果没有为partial方法实现定义,它将生成一个错误 有人能帮我澄清一下这个话题吗?因为对它们的调用不能从调用代码中消除,以防它们在不破坏代码的情况下无法

我目前正在学习C#,这本书叫做《开始Visual C#2010》,我在这一章中讨论了部分方法和类的不同方面和特点

引用这本书:

考虑一下为什么分部方法不能有返回类型。如果你能回答你的问题 如果您感到满意,您可以确保完全理解此主题-因此这是留给您的练习。”

这就是我被卡住的地方。 我能想到的唯一原因是,当方法的返回值被分配给代码中的某个对象时,如果没有为partial方法实现定义,它将生成一个错误


有人能帮我澄清一下这个话题吗?

因为对它们的调用不能从调用代码中消除,以防它们在不破坏代码的情况下无法实现

例如:

partial void foo();
partial int bar();
呼叫代码:

...
foo(); // successfully removed if foo isn't implemented
int x = bar() * 2; // what to do here?
Console.WriteLine(x);

是的,你是对的,这就是为什么:)这是重复的吗,@Jodrell不,虽然这个问题可能会影响到另一个问题,但另一个问题肯定更广泛(这是我能看到的这个特定问题的最早版本)另请参见使用
条件属性修饰的方法。谢谢,看起来我自己也或多或少是对的。@Jodrell,它们不会影响彼此的计算,它们都是从其他调用代码的角度进行检查的。