问题标签 [readonly]

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 投票
6 回答
674 浏览

c# - C# - 这个声明的字符串是否被视为常量?

帮我在这里解决一个争论。

这是:

处理方式与此完全相同:

IE。如果我明确指出字符串 s 是一个常量,它会有所不同吗?

而且,如果不以同样的方式对待它,为什么不呢?

0 投票
7 回答
19711 浏览

c# - 覆盖子类中的 ReadOnly 属性以使其成为读/写(VB.NET 或 C#)

这在带有属性的 VB.NET 中似乎是不可能的,因为属性语句本身必须描述它是否ReadOnly存在。

在下面的示例中,它不允许我进行ReadWriteChild编译。我想我可以让父级读/写,然后让 ReadOnlyChild 的设置器不做任何事情,但这似乎有点 hacky。在这种情况下,最好的选择似乎是放弃属性,转而使用 getter/setter 方法。

0 投票
11 回答
13451 浏览

c# - 什么时候,如果有的话,我们应该使用 const 吗?

Const被烘焙到客户端代码中。Readonly不是。但是const速度更快。可能只是轻微的。

const问题是,有没有你更喜欢的场景readonly?或者换种说法,我们实际上不是总是readonly用 a代替 a更好const吗(记住上面所说的烘焙)?

0 投票
11 回答
53344 浏览

c# - 如何在 C# 中删除包含只读文件的目录?

我需要删除一个包含只读文件的目录。哪种方法更好:

  • 使用DirectoryInfo.Delete(), 或,

  • ManagementObject.InvokeMethod("Delete")?

使用DirectoryInfo.Delete(),我必须手动关闭每个文件的只读属性,但ManagementObject.InvokeMethod("Delete")似乎不需要。有没有一种情况比另一种更可取?

示例代码(test.txt 是只读的)。

第一种方式:

第二种方式:

0 投票
8 回答
28837 浏览

c# - C# 中的“只读”属性访问器

我有以下课程:

我希望用户能够获取 mMyList 这就是为什么我通过属性公开“get”但是我不希望他们对对象(即 MyList.Add(new Class());) 进行更改以使其回到我的课堂。

我想我可以返回对象的副本,但这可能会很慢,我正在寻找一种方法来提供编译时错误,通知用户他们不应该期望能够修改返回的值财产。

这可能吗?

0 投票
6 回答
5352 浏览

c++ - 为什么我不能为指针赋值?

在阅读了常见问题解答和我能找到的所有其他内容之后,我仍然感到困惑。如果我有一个以这种方式初始化的 char 指针:

char *s = "Hello world!"

该字符串位于只读内存中,我无法像这样更改它:

制作“Wello world!”。我明白这一点,但我不能,就我的一生,了解如何使它不是只读的。我必须使用数组而不是指针吗?喜欢这里吗?

这是我的代码:

错误消息只是一个分段错误。如果这是一个非常愚蠢的问题,请提前道歉。

非常感谢所有的帮助。在听取了你所有的建议后,我明白了:

但是,函数末尾的删除似乎导致了它们自己的分段错误。为什么?

为了兴趣起见:错误是由于在递增后访问 e 和 s 指针。一个更简单的解决方案随之而来:

0 投票
3 回答
3337 浏览

.net - 如何在 LINQ to SQL 中创建“只读”属性?

我有一个属性(“IsLatest”),我已将“只读”设置为“真”

这是 XML:

为什么代码生成器会生成公共的“get”和“SET”访问器?

另外,有没有办法让它为只读属性生成 SET(多么新颖的想法)?

注意:我正在使用带有 .NET 3.5 SP1 的 V2008 SP1

0 投票
2 回答
8940 浏览

delphi - Delphi ClientDataset 只读

我目前正在测试:

  1. 指向 IB 数据库的 SQLConnection。
  2. 将 SQLConnection 字段设置为上述字段的 SQLDataset。
  3. 将 (2) 中的 SQLDataset 作为其 Dataset 字段值的 DatasetProvider。
  4. 一个 ClientDataset,其中 ProviderName 字段指向 (3) 中的提供者。

我使用以下方法(从 Alister Christie 借来的)来获取数据...

它只用一条记录填充 DBGrid。但是,当我手动编辑记录时,单击发布,然后尝试提交更改,使用

它会爆炸,并显示消息“SQLDataset1:无法修改只读数据集”。

我检查了 Provider 和 ClientDataset 的 ReadOnly 属性,并且 SQL 没有连接。

什么可能导致错误?

0 投票
9 回答
62794 浏览

wpf - XAML 中只读属性的 OneWayToSource 绑定

我正在尝试Readonly使用 as 模式绑定到属性OneWayToSource,但似乎这无法在 XAML 中完成:

我得到:

无法设置属性“FlagThingy.IsModified”,因为它没有可访问的集访问器。

IsModified是只读DependencyPropertyFlagThingy。我想将该值绑定到FlagIsModified容器上的属性。

要清楚:

这可能只使用 XAML 吗?


更新:好吧,我通过在容器上而不是在FlagThingy. 但我仍然想知道这是否可能。

0 投票
1 回答
3390 浏览

c# - C# 中的树节点中是否提供只读属性?

如何在 Windows C# 中设置树节点“只读”?我们不应该禁用,默认。