问题标签 [language-features]

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 投票
4 回答
392 浏览

c# - 条件取消引用运算符在 C# 中会是一件好事吗?

在函数式语言中,通常有一个Maybemonad,它允许您将多个调用链接到一个对象并让整个表达式返回None/null如果链的任何部分计算为空,而不是NullReferenceException通过链接调用在 C# 中获得的典型对象可能为空。

这可以通过编写Maybe<T>一些扩展方法来轻松实现,以允许使用查询理解在 C# 中进行类似行为,这在处理带有可选元素/属性的 XML 时非常有用,例如

但是这种语法有点笨拙和不直观,因为人们习惯于在 Linq 中处理序列而不是单个元素,并且它在末尾留下了 aMaybe<T>而不是 a 。T条件取消引用运算符(例如..)是否足够有用以使其成为语言?例如

有条件的取消引用将扩展为:

我可以看到这可能会导致可怕的滥用,例如..在任何地方使用来避免 a NullReferenceException,但另一方面,如果使用得当,它在很多情况下可能会非常方便。想法?

0 投票
8 回答
391 浏览

.net - 编写 .NET 可移植代码还是利用语言特性?

有时我需要将一段代码或整个项目从 VB.NET 转换为 C#,反之亦然。不幸的是,由于内在的语言差异,有时无法自动完成代码转换。例如,我指的是诸如在 C# 中可用而在 VB.NET 中不可用的关键字,或者在 VB.NET 而在 C# 中不可用的XML Literals

那么我的问题是,您是否在编写 .NET 项目时考虑过源代码的可移植性,或者您是否充分利用了语言特性?

0 投票
4 回答
10103 浏览

c# - string.Format() 参数

您可以将多少个参数传递给 string.Format() 方法?

它必须有某种理论上的或强制的限制。它是基于 params[] 类型的限制还是使用它的应用程序的内存使用量,还是完全基于其他东西?

0 投票
10 回答
16204 浏览

c# - 在 if() 中调用方法 - C#

我有几个方法根据它们的成功返回一个布尔值,在 IF() 内部调用这些方法有什么问题吗?

如果 Method1() 返回 FALSE,则 Method2() 不需要触发。

让我知道上面的代码有任何问题。

谢谢你。

编辑:由于代码没有问题,我会接受最有用的答案...添加评论以解决“新手&&&”问题

0 投票
1 回答
1287 浏览

wpf - WPF RichTextBox 和特定的文化问题

我试图将 System.Windows.Control.RichTextBox 的语言设置为“es-PE”,但我发现
了一些问题,例如在某些计算机中,工作正常,并且 SpellChecker 启用
了“es-PE”语言,但在其他计算机中它只适用于“en-US”,所以我不知道
该控件有什么问题,我在 XAML 和 C# 中使用了以下代码:

这是用户从 GridView 中选择行然后显示附加屏幕截图时的代码

替代文字

我还尝试从 SO 中配置和删除“en-US”语言,当拼写检查器完全停止时,当我为键盘重新添加该语言时,拼写检查器重新出现。

剧照不使用“es-PE”或仅使用西班牙语作为父级

提前致谢!

0 投票
4 回答
1961 浏览

c# - C# 事件订阅

在C#中有什么优势

相对

或相反亦然。

第一个是否打开了 blahinstance.Blahevent = null 或 blahinstance.Blahevent(obj,even)

0 投票
2 回答
268 浏览

java - 为什么在 java 中 op-assign 运算符类型不安全?

我不确定这个问题的措辞是否明确,但举个例子会更清楚。

我发现这在 Java 中不起作用:

但这将:

即,似乎 = 运算符是类型安全的,但 += 不是。这是否有任何深层原因,或者它只是语言设计者必须做出的另一个任意决定。

0 投票
7 回答
2468 浏览

c++ - 你如何构建你的比较函数?

我经常遇到这种情况,尤其是在 C++ 中进行排序时,我正在比较一系列字段以比较更大的结构。一个简化的例子:

我本能的方法似乎很麻烦,尤其是对于 3 个以上的领域。您将如何在 C++ 中构建这一系列比较?其他语言是否提供更简洁或更优雅的语法?

0 投票
3 回答
6595 浏览

python - 如何在装饰器中使用命名参数?

如果我有以下功能:

我希望仅在arg1为 20 时才触发拦截。我希望能够将命名参数传递给函数。我怎么能做到这一点?

这是一个小代码示例:

这会引发以下异常 TypeError: intercept() got an unexpected keyword argument 'a'

0 投票
4 回答
689 浏览

scripting - 游戏脚本需要哪些语言功能?

我正在研究设计一种游戏脚本语言,并且想知道游戏行业中雇用的人认为什么是好的游戏脚本语言的基本项目/属性。这包括以下内容:

  • 静态与动态类型
  • 它应该针对谁:程序员还是设计师?
  • 语法(必须看起来像 C 吗?)
  • 应该有多高?(例如 C vs Lisp——或者命令式 vs 函数式)
  • 它必须能够做什么。它需要多快?

另外,我从一些消息来源听说脚本往往非常简单,因为它们是由设计师而不是程序员编写的。是这样吗?