首页 > TAG信息列表 > optional-parameters

使用具有(模拟的)可选/默认参数的函数编写Javadoc

我有一些C代码的Java包装器,其中通过手动重载相关方法来模拟默认参数. [示例在Does Java support default parameter values?中.]在一种情况下,C fn具有3个可选参数,因此我不得不用Java编写8个方法. 现在,我想为上述方法编写JavaDocs.有什么办法可以避免将相同的文本写8次?除了冗长

CodeGo.net>使用命名和可选参数来区分构造函数

设想一个类,原则上可以通过指定两个属性之一的值来创建,这两个属性恰好具有相同的类型.以下代码通过结合使用named and optional parameters来区分这两个构造函数来实现此目的: class Program { static void Main() { //Note: these 2 ctors are distin

是否可以限制C#中可选参数的值?

C#允许使用optional parameters:如果在调用中省略了参数,则可以指定值,然后编译器将指定值本身. 例: public interface IFoo { void SomeMethod (int para = 0); } 这个想法很有用,但是一个问题是可以在类层次结构的不同级别上定义几个“默认值”.例: public class SubFoo :

Java可选参数

如何在Java中使用可选参数?什么规范支持可选参数?解决方法:varargs可以做到这一点(在某种程度上).除此之外,必须提供方法声明中的所有变量.如果希望变量是可选的,则可以使用不需要参数的签名重载方法. private boolean defaultOptionalFlagValue = true; public void doSomething(b

python显式没有传递可选参数

想象一下以下场景: class A: def __init__(self, arg1=3, arg2=5): pass def createA(arg1=None, arg2=None): if arg1 is None: if arg2 is None: a = A() else: a = A(arg2=arg2) else: if arg2 is None:

python – 如何使** kwargs可选

我有两个类具有相同名称的方法,但此方法使用不同的参数.所以我想到了使用** kwargs(见下面的例子).但是这两种方法中的一种不需要任何参数,所以我得到这个错误: TypeError: print_smt() takes 1 positional argument but 2 were given 因为我想将空字典传递给函数. 我怎么解决这

具有可选参数的C#递归函数

我在递归函数上遇到可选参数问题 这是一个示例代码: private static void RecursiveFunction(int x, int optional = 0) { if (x < 5) RecursiveFunction(x + 1, optional++); } 调用函数时: RecursiveFunction(0); 我得到了以下结果(只需在即时窗口中调用此代码stri

使用可选参数调用方法的最pythonic方法是什么?

假设我有一个带有一些可选参数的方法. def foo(a,b = 1,c = 2,d = 3) 如何调用它,以便如果我的变量为None或空字符串,则使用默认值? 像下面这样的条件似乎是一个可怕的解决方案: if b and not c and d: foo(myA, b = myB, d = myD) elif b and not c and not d: ... 在Java

c# – 参数:(必需,可选)vs(必需,必需,可选)

我已经定义了以下方法: void Write(string fileContent, string fileName, string container = StorageBlobContainers.ProfilePictures) 编译的代码没有问题,所以我编写了代码来执行它(来自不同的文件): string json = JsonConvert.SerializeXNode(node); FileProcessor.Write(js

c# – RhinoMock中带有存根的可选参数

我想存根一个接收2个布尔参数的函数.第一个是必需的,第二个是可选的.如果我尝试将Arg.Is.Anything发送到第一个但没有第二个信息,我收到一个错误: System.InvalidOperationException:使用Arg时,必须使用Arg.Is,Arg.Text,Arg.List,Arg.Ref或Arg.Out定义所有参数.预期有2个参数,1个已被

C#4中的过载分辨率和可选参数

我正在使用一些代码,它有一个函数TraceWrite的七个重载: void TraceWrite(string Application, LogLevelENUM LogLevel, string Message, string Data = ""); void TraceWrite(string Application, LogLevelENUM LogLevel, string Message, bool LogToFileOnly, string Data = "&

c# – 除了可选参数之外,为什么允许有2个相同的方法签名?

public static bool TryGetDbRow(DbConnection cnctn, string indexName = null) public static bool TryGetDbRow(DbConnection cnctn) 没有字符串作为最后一个参数,将不会调用第一个. 除了可选参数之外,为什么允许使用2个相同的方法签名?解决方法:Eric Lippert在他的博客http:/

python – 强制某些设置需要可选参数

我创建了一些课程, class c: def __init__(self, mode=False): if mode: force foo to require optional_parameter def foo(self, optional_parameter=""): print("something %s" % optional_parameter) 有没有办法,如果使用mode

python – 使用全局变量作为默认值

我有一个函数,它需要很多参数,因为我不想记住它们的位置,所以我决定使用命名参数 def f(a=None, b=None, c=None): print a,b,c f('test', c=5, b='second param') >>> test second param 5 现在,通常我一次只更改一个参数,所以我想只通过键入来调用该函数f(c = 3.14),其预期

c# – 有没有办法将NUnit TestCase属性与可选参数一起使用

我正在尝试运行一些测试用例,但我需要使其中一个参数可选. 我尝试了以下但是NUnit忽略了测试并打印了以下“忽略:提供的参数数量错误” [TestCase(Result = "optional")] [TestCase("set", Result = "set")] public string MyTest(string optional = "optional") { return opti