问题标签 [optional-parameters]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1422 浏览

c# - 在 C# 中模拟可选“out”参数的模式?

我正在将 API 从 C 转换为 C#,其中一个函数分配了许多相关对象,其中一些是可选的。C 版本接受几个指针参数,这些参数用于返回对象的整数句柄,调用者可以传递NULL一些指针以避免分配这些对象:

对于 C# 版本,明显的翻译将使用out参数而不是指针:

...但这无法指出哪些对象是不需要的。是否有任何著名的 C# API 示例做类似的事情,我可以模仿?如果没有,有什么建议吗?

0 投票
2 回答
331 浏览

resharper - Resharper 智能感知混淆

今天我的 Resharper 5 副本中发生了一些奇怪的事情。我有一个看起来像这样的类:

当我开始输入 DoWork(我们从智能感知得到以下信息时:

替代文字

请注意,它正在提取构造函数参数,并以冒号结尾:userName:

这里发生了什么?

编辑:

正如 Reed 在下面回答的那样,这是一个名为Named and Optional Arguments的新 C# 4 功能。它的目的是允许您指定参数的名称,而不是它在参数列表中的位置。所以你不必记住参数在参数列表中的位置来使用它(尽管这对于智能感知来说基本上没有意义)。它确实使可选参数更易于使用。

谢谢里德。

0 投票
2 回答
420 浏览

c# - Overload Resolution and Optional Parameters in C# 4

I am working with some code that has seven overloads of a function TraceWrite:

(All public static, namespacing noise elided above and throughout.)

So, with that background:
1) Elsewhere, I call TraceWrite with four arguments: string, LogLevelENUM, string, bool, and I get the following errors:

Why doesn't this call resolve to the second overload? (TraceWrite(string, LogLevelENUM, string, bool, string = ""))

2) If I were to call TraceWrite with string, LogLevelENUM, string, string, which overload would be called? The first or the third? And why?

0 投票
1 回答
1044 浏览

html - 将值设置为锚点的 HTML 选项标签

我正在更新一些超级遗留代码,我不确定如何使这个 HTML5 兼容。

我个人从来没有遇到过这样的事情,所以任何帮助都会很棒。

0 投票
2 回答
12221 浏览

fortran - Fortran 90 存在可选参数

我不理解 pgf90 7.2 中 present() 内在函数的行为。我写了一个 20 行的示例程序来测试它,但结果对我来说仍然没有意义。观察:

如果我:从我的主程序调用 testopt(1,2,(any variable)),它会打印:“present check: T F”。但是,如果我:从子程序调用 testopt(1,2,(any variable)),它会打印:“当前检查:T T”。我希望在任何一种情况下都能看到“当前检查:F F”,因为我只使用 3 个非可选参数调用子例程,而不是可选参数。我无法理解为什么它会以这种方式运行,这导致了我正在处理的程序中的一个主要错误。我很欣赏任何见解。谢谢。

0 投票
4 回答
1194 浏览

c# - C# Windows Phone XNA 应用程序中的可选参数

是否可以在 Windows Phone XNA 应用程序中使用可选参数(和其他纯语法 C# 4.0 功能)?

我已经阅读并听到了关于此的相互矛盾的信息。在我的应用程序的高级构建设置中,语言版本设置为 C# 3.0(C# 4.0在语言版本下拉列表中不可用)。3.0 是最初将用于 Windows Phone 开发的“官方”C# 版本吗?

甚至期望 C# 4.0 功能完全可用,我是不是很傻?

0 投票
1 回答
405 浏览

parsing - 逗号分隔的函数调用参数的解析器表达式

我正在编写一个解析器,它可以解析像myfunc1(),myfunc2(param1)myfunc3(param1, param2)(带有未知数量的参数)这样的表达式。现在我正试图让我的解析表达式正确。我正在使用Lemon Parser Generator。这是我想出的:

暂时不要介意花括号的内容。该params定义允许空参数(彼此之后的几个分隔符),目前可以。但是我将如何更改定义以强制非空参数但仍然让所有参数由SEPARATOR令牌分隔?

0 投票
6 回答
58335 浏览

function - 如何在 Clojure 中为函数参数创建默认值

我带着这个:

但它必须是一个更好的方法来做到这一点。

0 投票
2 回答
2716 浏览

c# - 可选参数代码在 .NET 3.5 中编译。为什么?

这段代码在框架 3.5 项目中的 VS 2010 中编译正常(我三次检查)

为什么?我在 C# 4 规范(doc 版本)第 21.1 节中没有看到任何内容表明这应该是向后兼容的。我怎么没有编译错误?在某些情况下这会静默失败吗?

0 投票
2 回答
242 浏览

c# - C# 默认可选参数选择器

选择哪个构造函数?