問題タブ [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.
c# - C# - この宣言された文字列は const として扱われますか?
ここで議論を解決するのを手伝ってください。
これは:
これとまったく同じように扱われます:
すなわち。文字列 s が const であることを具体的に述べれば、違いはありますか。
そして、もしそれが同じように扱われなければ、なぜですか?
c# - サブクラスで ReadOnly プロパティをオーバーライドして、読み取り/書き込み可能にする (VB.NET または C#)
プロパティステートメント自体がプロパティであるかどうかを記述する必要があるため、これはプロパティを使用する VB.NET では可能ではないようですReadOnly
。
ReadWriteChild
以下の例では、コンパイルできません。親を読み取り/書き込み可能にしてから、ReadOnlyChild のセッターに何もさせないようにすることもできると思いますが、それは一種のハッキーに思えます。この場合の最良の代替手段は、getter/setter メソッドを優先してプロパティを放棄することです。
c# - const を使用する必要がある場合はいつですか。
Const
クライアントコードに組み込まれています。Readonly
そうではありません。しかしconst
、より高速です。ほんの少しかもしれませんが。
問題は、よりも優先すべきシナリオはありますconst
かreadonly
? または言い換えると、実質的に常にreadonly
a の代わりに aを使用する方が良いとは限りませんconst
(上記のベーキングのことを念頭に置いてください)。
c# - C#で読み取り専用ファイルを含むディレクトリを削除するにはどうすればよいですか?
読み取り専用ファイルを含むディレクトリを削除する必要があります。どちらのアプローチが優れているか:
、または
DirectoryInfo.Delete()
、ManagementObject.InvokeMethod("Delete")
?
ではDirectoryInfo.Delete()
、各ファイルの読み取り専用属性を手動でオフにする必要がありますが、そのManagementObject.InvokeMethod("Delete")
必要はないようです。一方が他方よりも好ましい状況はありますか?
サンプル コード (test.txt は読み取り専用)。
最初の方法:
2 番目の方法:
c# - C# の「読み取り専用」プロパティ アクセサー
私は次のクラスを持っています:
ユーザーがmMyListを取得できるようにしたいので、プロパティを介して「get」を公開しましたが、オブジェクト(つまり、MyList.Add(new Class());)に変更を加えて作成したくありません私のクラスに戻ります。
私はオブジェクトのコピーを返すことができると思いますが、それは遅いかもしれません.財産。
これは可能ですか?
c++ - ポインターに値を代入できないのはなぜですか?
よくある質問と私が見つけることができる他のすべてを読んだ後、私はまだ混乱しています. この方法で初期化された char ポインターがある場合:
char *s = "Hello world!"
文字列は読み取り専用メモリにあり、次のように変更することはできません:
「Wello world!」を作るために。これは理解できますが、私の人生では、それを読み取り専用にしない方法を理解することはできません。ポインターの代わりに配列を使用する必要がありますか? ここのように?
これは私のコードです:
エラー メッセージは単なるセグメンテーション違反です。これが本当にばかげた質問である場合は、事前に謝罪してください。
すべての助けをありがとう。あなたのアドバイスをすべて取り入れた後、私はこれを得ました:
ただし、関数の最後の削除は、独自のセグメンテーション違反を引き起こしているようです。なんで?
参考までに: エラーは、インクリメントされた後に e および s ポインターにアクセスしたことが原因でした。それから、はるかに簡単な解決策が続きました。
.net - LINQ to SQL で 'ReadOnly' プロパティを作成するにはどうすればよいですか?
「読み取り専用」を「True」に設定したプロパティ (「IsLatest」) があります。
XML は次のとおりです。
コード ジェネレーターが public 'get' AND 'SET'アクセサーを生成するのはなぜですか?
また、読み取り専用プロパティの SET を生成しないようにする方法はありますか (斬新なアイデアです)。
注: V2008 SP1 と .NET 3.5 SP1 を使用しています
delphi - Delphi ClientDataset 読み取り専用
私は現在以下でテストしています:
- IB データベースを指す SQLConnection。
- 上記のものに設定された SQLConnection フィールドを持つ SQLDataset。
- (2) の SQLDataset を Dataset フィールド値として持つ DatasetProvider。
- (3) のプロバイダーを指す ProviderName フィールドを持つ ClientDataset。
次の方法 (Alister Christie から借用) を使用してデータを取得します...
これにより、DBGrid に 1 つのレコードだけが入力されます。ただし、レコードを手動で編集する場合は、[投稿] をクリックし、次を使用して変更をコミットしてみてください。
「SQLDataset1: 読み取り専用データセットを変更できません」というメッセージが表示されます。
Provider と ClientDataset の ReadOnly プロパティを確認しましたが、SQL に結合がありません。
エラーの原因は何ですか?
wpf - XAML の readonly プロパティからの OneWayToSource バインディング
Readonly
as モードでプロパティにバインドしようとしてOneWayToSource
いますが、これは XAML では実行できないようです:
私は得る:
アクセス可能な set アクセサーがないため、プロパティ 'FlagThingy.IsModified' を設定できません。
IsModified
は読み取り専用DependencyProperty
ですFlagThingy
。FlagIsModified
その値をコンテナのプロパティにバインドしたいと思います。
明確にするために:
これは XAML だけを使用して可能ですか?
更新:まあ、私はバインディングをコンテナではなく に設定することで、このケースを修正しましたFlagThingy
。しかし、これが可能かどうかはまだ知りたいです。
c# - C#のツリーノードで読み取り専用プロパティを使用できますか?
Windows C#でツリーノードを「読み取り専用」に設定するには? 無効にしないでください。デフォルトです。