问题标签 [qualifiers]

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 回答
13385 浏览

c++ - cv 合格是什么意思?

我已经开始看到“cv-qualified”这个词被广泛使用。

我最后一个问题的答案:

如果 T 是(可能是cv 限定的)类类型(第 9 条),则调用 T 的默认构造函数(12.1)

有人可以为我定义吗?

0 投票
4 回答
496 浏览

c - 函数原型中的顶层 volatile 或 restrict 是否重要?

以下原型之间有什么实际区别吗?

C11 6.7.6.3/15 部分(最后一句)说,为了确定类型兼容性,不考虑顶级限定符,即允许函数定义在其参数上具有与原型不同的顶级限定符宣言了。

但是(与 C++ 不同)它并没有说它们被完全忽略。在这种情况下const显然没有实际意义;但是,在 和 的情况下volatilerestrict可能会有所不同。

例子:

原型中的存在是否允许编译器优化forrestrict的读取?areturn a;

相关问题

0 投票
1 回答
244 浏览

c - 当超结构引用非常量时,如何使用 const C 结构?

考虑以下示例:

Iterator 是提供集合修改功能,因此它保存非常量集合的地址。然而,它也提供了非修改函数,这些函数与 const 集合一起使用是完全合法的。

我正在寻找C中的解决方案。我确实看到了一些选择:

1.在初始化时,将 Collection 转换为非常量。这可能不是未定义的行为,因为对象最终不应被修改。但它令人毛骨悚然,因为有一个 const 对象,这样做是自找麻烦。Iterator 将成为一种广泛使用的通用机制,用于处理集合。当一个人要修改一个 const 集合时没有编译器警告真的很糟糕。

2.两种迭代器类型,一种是带有 const Collection* 成员的只读版本。这使使用复杂化,可能需要复制某些功能,可能由于翻译步骤而降低效率。我真的不想使 API 复杂化,并且有两个不同的结构以及两组函数。

3.具有两个指针的迭代器,而 Init 采用两个集合指针。

当有一个 const 集合时,非常量参数必须变为 NULL 并且最终尝试修改集合会崩溃(尝试取消引用 NULL 指针),这很好(安全)。我们有额外的存储费用。这很尴尬,取同一个集合的两个指针。

我也有点担心编译器在同一上下文中看到两个指针,这意味着如果通过可写指针修改了 Collection,编译器必须意识到只读指针可能指向同一个对象,它需要尽管有 const 限定符,但仍会重新加载。这安全吗?

你会选择哪一个,为什么?你知道解决这个问题的更好方法吗?

0 投票
1 回答
886 浏览

ssis - 删除空值上的文本限定符

我有一个非常基础的 SSIS 包。将数据从 SQL Server 2008 表导出到 txt 文件(逗号分隔)。最终客户想要带有文本限定符 (") 的字段,但是当值为 Null 时不想要文本限定符。不幸的是,有时这些字段有一个值,而其他时候它们为空。有没有办法只包含文本限定符该领域有真正的价值吗?

当前导出看起来像这样:

首选输出:

在 Reference 字段中,它始终为 null。所以我试图在这个字段上使文本限定符为“假”,但令人难以置信的是,他们甚至希望列标题也是文本限定的。

0 投票
8 回答
1385 浏览

c++ - 编译器不能自己判断一个变量是否为 const 吗?

我知道对于这么简单的函数,它将被内联:

但我的问题是,编译器不能自动检测到这与以下内容相同:

既然可以检测到,为什么我需要在const任何地方输入?我知道inline由于编译器的进步,关键字已经过时了。不是时候const做同样的事情了吗?

0 投票
1 回答
2264 浏览

excel - 编译错误:无效的限定符

我试图让我的程序运行 2 个工作簿和 3 个工作表。为我验证一些数字。

但是我收到一个无效的限定符错误,有人可以解释为什么吗?

0 投票
1 回答
18 浏览

zsh - 奇怪的 zsh 过滤行为

正在做:

print -l ./somedir/**/*.{png,jpg}给出了pngjpg文件的预期列表,并且存在两种类型,但是

print -l ./somedir/**/*.{png,jpg}(Lk+50)没有列出我jpg的大于 50k 的文件,说no matches found ./somedir/**/*.png(Lk+50).

为什么它停在png这里,而不是继续扩展jpg

0 投票
2 回答
628 浏览

c# - C#:为什么第一个命名空间是多余的?

这有点吓人。

我想一定有一个地方可以解释为什么会发生这种情况。

在我们的解决方案中,大约有 50 个不同的项目。大多数情况下,这些库以命名空间 OurCompany 开头。

我们有 OurComany.This.That 和 OurCompany.Foo.Bar... 等。

外部库与命名空间之间存在命名空间/类冲突

还有一个像这样合格的班级..

错误是这样的:

当我完全限定“OurCompany”命名空间下的任何内容时,即使 Resharper 也会给我一个“限定符是多余的”消息。即

我无法弄清楚到底在做什么。解决方案非常庞大,因此将事情拆开以尝试对问题进行逆向工程对我来说并不是一个很好的解决方案。

我应该声明,如果我使用...

... Resharper 消息消失了。

0 投票
1 回答
546 浏览

java - CDI - 生产者和限定符不在生产的对象上

想象一下有一个 SessionFactory 的生产者(例如):

不,我有第二个生产者,它产生一些其他对象,比如说一个 DatabaseObject,并且需要一个对 SessionFactory 的引用:

不,我可以像这样使用我的数据库对象:

到目前为止,一切都很好。所以让我们假设这些东西是在一个框架中实现的,并且将被多个应用程序使用。

现在一个应用程序决定要使用另一个 SessionFactory,所以它实现了自己的生产者和限定符:

但是现在,据我所知,我不能将 DatabaseObject 与限定符一起使用,因为 - 当然 - 限定符只是在 SessionFactory 的生产者处使用。所以这行不通:

因此,应用程序将不得不重新实现 DatabaseObject 生产者,具有完全相同的代码,或者扩展基本生产者并仅添加限定符:

从我的角度来看,这会以某种方式产生样板代码,如果你有很多生产者,这会很有趣。

有没有办法在不需要重新实现生产者的情况下实现这一点?所以基本上生产者方法被注入了关于它产生的对象上的限定符的 SessionFactory?

谢谢!

0 投票
1 回答
90 浏览

android - AVD忽略布局大/文件

我通过 Android Studio 选择了我的模拟器作为 Nexus 7。它的大小是“大”的。

但是当我在模拟器上运行我的应用程序时,它仍然更喜欢使用默认的“布局”文件夹资源文件。

我尝试使用“layout-sw600dp”限定符,但仍然没有运气。

两个布局文件夹中的资源文件具有相同的名称“news_articles.xml”。

请参阅下面的基本代码:

我错过了什么?