问题标签 [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.
c# - 在 C# 中模拟可选“out”参数的模式?
我正在将 API 从 C 转换为 C#,其中一个函数分配了许多相关对象,其中一些是可选的。C 版本接受几个指针参数,这些参数用于返回对象的整数句柄,调用者可以传递NULL
一些指针以避免分配这些对象:
对于 C# 版本,明显的翻译将使用out
参数而不是指针:
...但这无法指出哪些对象是不需要的。是否有任何著名的 C# API 示例做类似的事情,我可以模仿?如果没有,有什么建议吗?
resharper - Resharper 智能感知混淆
今天我的 Resharper 5 副本中发生了一些奇怪的事情。我有一个看起来像这样的类:
当我开始输入 DoWork(我们从智能感知得到以下信息时:
请注意,它正在提取构造函数参数,并以冒号结尾:userName:
这里发生了什么?
编辑:
正如 Reed 在下面回答的那样,这是一个名为Named and Optional Arguments的新 C# 4 功能。它的目的是允许您指定参数的名称,而不是它在参数列表中的位置。所以你不必记住参数在参数列表中的位置来使用它(尽管这对于智能感知来说基本上没有意义)。它确实使可选参数更易于使用。
谢谢里德。
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?
html - 将值设置为锚点的 HTML 选项标签
我正在更新一些超级遗留代码,我不确定如何使这个 HTML5 兼容。
我个人从来没有遇到过这样的事情,所以任何帮助都会很棒。
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 个非可选参数调用子例程,而不是可选参数。我无法理解为什么它会以这种方式运行,这导致了我正在处理的程序中的一个主要错误。我很欣赏任何见解。谢谢。
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 功能完全可用,我是不是很傻?
parsing - 逗号分隔的函数调用参数的解析器表达式
我正在编写一个解析器,它可以解析像myfunc1()
,myfunc2(param1)
和myfunc3(param1, param2)
(带有未知数量的参数)这样的表达式。现在我正试图让我的解析表达式正确。我正在使用Lemon Parser Generator。这是我想出的:
暂时不要介意花括号的内容。该params
定义允许空参数(彼此之后的几个分隔符),目前可以。但是我将如何更改定义以强制非空参数但仍然让所有参数由SEPARATOR
令牌分隔?
function - 如何在 Clojure 中为函数参数创建默认值
我带着这个:
但它必须是一个更好的方法来做到这一点。
c# - 可选参数代码在 .NET 3.5 中编译。为什么?
这段代码在框架 3.5 项目中的 VS 2010 中编译正常(我三次检查)
为什么?我在 C# 4 规范(doc 版本)第 21.1 节中没有看到任何内容表明这应该是向后兼容的。我怎么没有编译错误?在某些情况下这会静默失败吗?
c# - C# 默认可选参数选择器
选择哪个构造函数?