问题标签 [explicit]

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 投票
2 回答
889 浏览

sql-server - 对于 XML 显式

说我有这个设置:

这将返回:

如果我使用“for xml auto”,那么我得到:

然而,这不是我需要的。我想展示的是@main 是有两个孩子的主表:@subA 和@SubB。@SubA 反过来也有两个孩子:@SubA1 和@SubA2,所以我想回来:

我很确定我将不得不使用“用于 xml 显式”,但在我尝试过的所有尝试中,我无法获得我需要的格式。

任何人都可以显示一个示例查询,该查询将以所需格式返回数据吗?

谢谢,马克

0 投票
13 回答
1123 浏览

theory - 为什么“明确性”被认为是一件好事?

我经常听到人们称赞语言、框架、结构等是“明确的”。我试图理解这个逻辑。语言、框架等的目的是隐藏复杂性。如果它让你明确指定各种细节,那么它并没有隐藏太多的复杂性,只是移动它。显式性有什么好处?你如何使语言/框架/API“显式”,同时仍使其达到隐藏复杂性的目的?

0 投票
1 回答
414 浏览

c# - C#:显式命名空间未出现在生成的 XML 中

给定以下 C# 代码来生成 XML 文件:

我在requestXML.OuterXML节目中看到的 XML

而不是

正如我所料。我究竟做错了什么?

0 投票
6 回答
4285 浏览

c++ - C++ 显式构造函数和迭代器

考虑以下代码:

上面应该编译吗?我的感觉是它不应该,因为构造函数被标记explicit

Microsoft Visual C++ 同意,给出明确的错误信息:cannot convert from 'int' to 'const A'; Constructor for struct 'A' is declared 'explicit'

但是,使用Comeau 的在线编译器,代码编译成功。

哪个是对的?

编辑:

有趣的是,更改vectorset(在添加operator <到 A 之后)会导致两个编译器都给出错误。

但是,更改vector<int>tomap<int, int>vector<A>tomap<A, A>会导致两个编译器都接受代码!

0 投票
2 回答
737 浏览

c++ - 将 const 对象显式传递给构造函数,该构造函数接受 const 对多态类的引用

我的类遇到了问题,将一个 const 对象(多态结构)传递给一个显式构造函数,该构造函数接受对该多态结构的基类的 const 引用。这是示例(这不是我的代码,这里是为了解释)

似乎只有当我将 Derived 对象显式转换为其基类 Base 时,它​​才能与第二个版本(显式构造函数调用 Problem)一起正常工作,如下所示:

我没有意识到隐式调用和显式调用 Problem 类的构造函数之间的区别。谢谢!

0 投票
2 回答
956 浏览

c# - 我们什么时候必须在 C# 中使用隐式和显式运算符?

这些运算符的用途是什么?

0 投票
1 回答
9224 浏览

c# - 为什么我不能将接口与显式运算符一起使用?

我只是想知道是否有人知道您不允许使用带有隐式或显式运算符的接口的原因?

例如,这会引发编译时错误:

“不允许用户定义的与接口之间的转换”

谢谢,

0 投票
3 回答
1311 浏览

c++ - 我想扩展 std::string,但不是出于您可能认为的原因

我有一个有效地接受字符串的方法。但是,我想使用的字符串子集非常有限。我正在考虑 typedef'ing std::string 作为某个类,并显式调用这些函数。但是,我不确定这是否可行。想法?

0 投票
3 回答
490 浏览

.net - 检查的显式行为与隐式行为

我不确定如何构建这个问题,但我很想知道你们对以下情况有何看法以及您更喜欢哪一种。

我们正在使用 winforms 处理客户端-服务器应用程序。我们有一个控件,在填充另一个字段时会自动计算一些字段。所以我们有一个字段货币,当用户填写它时,它将确定另一个字段的自动填充,可能是更多字段。

当用户填写货币字段时,将根据用户引入的字符串从缓存中检索货币对象。如果在缓存中找不到输入的货币,缓存对象将返回空引用。当要求应用层根据货币计算其他字段时,再往下,给定一个空货币,将返回一个空的特定字段。这种方式默认的隐式行为是清除所有字段。这是预期的行为。只是为了更清楚一点,当用户输入“不可用的货币”时,他当然会收到通知,但依赖于输入的货币的字段也应该被清除。这是通过将特定控制值设置为空来完成的。

我称之为显式实现的是验证 Currency 对象是否为空,在这种情况下,依赖字段被显式清除。

我认为后一个版本更清晰,更不容易出错且更可测试。但这意味着一种冗余形式。前一个版本不太清楚,它暗示了应用层的某种行为,而在测试中没有表达出来。也许在较低层测试中,但是当需要修改较低层时,以便在给定零货币的情况下应该返回其他东西,我认为没有动机的测试不会成为阻碍在上层引入错误。

你们有什么感想?

0 投票
3 回答
13616 浏览

c# - 为什么我不能在显式实现接口的类中调用方法?

这是故事。我创建了一个界面,IVehicle. 我在我的类中明确实现了接口,Vehicle.cs.

这是我的界面:

这是我的课:

请注意,这getWheel()是明确实现的。现在,当我尝试在我的 Vehicle 类中调用该方法时,我收到一个错误,指示getWheel()当前上下文中不存在该方法。有人可以帮我理解我做错了什么吗?