問題タブ [self]
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.
python - 関数のPython'self'
「self」の説明に関するSOの投稿を読み、クラスに関するPythonのドキュメントを読みました。self
Pythonクラスでの使用とその規則を理解していると思います。
self
ただし、Pythonとそのイディオムは比較的新しいため、手続き型関数定義で使用される理由がわかりません。たとえば、整数型に関するPythonのドキュメントでは、関数の例は次のとおりです。
で置き換えるself
ことnum
は、同じ機能結果です。すなわち:
最初のケースで__init__
なぜ使用されているのかをここで確認できるようなイディオムはありません。私は、手続き型関数の他self
の場所でもこの使用法を見てきましたが、混乱を招きます。self
だから私の質問:クラスやメソッドがない場合、なぜself
説明的なパラメータ名ではなく関数定義で使用するのですか?
iphone - オブジェクトのinitメソッドでselfキーワードを使用してivarを割り当てる
self.ivar =(コンビニエンスメソッド)をオブジェクトの'init'メソッドで使用するのは悪いことだと読みました。これは、継承を台無しにするからです。
ただし、オブジェクトをサブクラス化しないことがわかっている場合は、自己キーワード割り当てを使用しても大丈夫ですか?
私が尋ねる理由はこれです。独自のinitメソッドを使用して新しいオブジェクトを作成し、そのメソッドでさまざまな初期割り当てを実行します。selfキーワードを使用しないため、iVarに直接割り当てます。したがって、convenienceメソッドではなくallocメソッドを使用します。つまり
または、便利な方法を使用する場合は、それを保持します。つまり
しかし...メモリリークツールをオンにしてプログラムを実行すると、これらの割り当てはすべてメモリリークとして識別されます。
alloc-initの代わりにselfキーワードと便利なメソッドを使用できる場合は、これで問題を回避できます。
ただし、alloc-initアプローチを使用することを選択した場合、iVarをどこでリリースすることになっていますか?ちょうどdeallocで?
ご協力いただきありがとうございます :)
マイケル
asp.net - モーダル ダイアログ、window.showModalDialog からダウンロードできません
window.showModalDialog() を使用して aspx ページがモーダル ポップアップで開かれている場合、aspx ページからファイルをダウンロードできません。
aspx ページに画像ボタンがあり、それをクリックすると、いくつかのビジネス ロジックを使用して Excel ファイルが生成され、それを応答ヘッダーに追加して、そのファイルをダウンロードできるようにします。コードは次のとおりです。
この aspx ページをモーダル ポップアップとして開くと、ブラウザのダウンロード ウィンドウが表示されません。通常の場合 (モードレス、window.open を使用して開いた) ポップアップ ダウンロードは正常に動作します。
また、ファイルをダウンロードするための別のアプローチを使用してみました。で応答ヘッダーを設定する代わりにibtnExport_Click
、Download.aspx などの別の aspx ページを開き、Download.aspxwindow.open
のページ読み込みイベントで応答ヘッダーを使用して設定しました。コードは以下のとおりです。
Download.aspx では、
まあ、それはモーダルポップアップとモードレスポップアップの両方の場合に機能し、IISにアプリケーションを展開するまで復活します:)。はい、このアプローチは ASP.NET 開発サーバーでは機能しますが、IIS では機能しません。
モーダルポップアップウィンドウでダウンロードを機能させるためのアイデアはありますか?
objective-c - 「self」でプロパティにアクセスする場合
この問題についてこのサイトでいくつかの質問を読みましたが、次のことを理解しています。
self.property は、手動または @synthesize によって作成された getter/setter メソッドにアクセスします。プロパティが保持、コピーなどとして宣言されているかどうかに応じて、保持カウントが正しく変更されます。たとえば、保持プロパティは、'retain' で新しい値が割り当てられた以前の値を解放し、保持カウントを 1 増やします。
通常、プロパティは同じ名前のインスタンス変数で宣言されます (手動で割り当てを行う場合は異なる可能性があります)。これは一般に、@synthesize によって生成されたアクセサーがインスタンス変数を使用してメモリ内のオブジェクトを参照し、関連するコマンドを実行するためです。
私の質問は、多くの例で、self.property とプロパティが異なるものに同じ意味で使用されており、ルールを決定するのに苦労しているという事実に基づいています。Apple Docs の「Recipes」サンプル アプリの 1 つの例には、次のようなものがあります。
と...
これらの各プロパティには、同じ名前のプライベート インスタンス変数が関連付けられています。すべてが「非アトミック、保持」属性を使用して同じ方法で宣言されます。それぞれがdeallocで解放されます...
ただし、'ingredients' は self を介してアクセスされ、'prepTimeTextField' は直接アクセスされます。
アクセス方法の違いの理由は何ですか?
ビューのデリゲートにアクセスしている場合はどうなりますか? または、以前のView Controllerによって保持されたプロパティとしてView Controllerに渡されたコアデータオブジェクトですか?
どうもありがとう
iphone - サブビューの UIButton、現在の ViewController のトリガー アクション
私は問題があります。スクロールビューに UITextViews を追加する通常のビューコントローラーがあります。これらの UITextviews に、動的な数の UIButtons を追加し、そこにターゲットを追加します。それらをUITextViewsに追加する理由は、テキストビューの原点を追加するviewcontrollerにそれらを追加すると、もちろんスクロールせずに画面の外に出てしまうからです。しかし、そうすると、ボタンがアクションをトリガーします。
私の質問は、ビューコントローラーをターゲットとして指定するにはどうすればよいですか? self を使用するか、appdelegate で作成された var をターゲットとして使用しても、トリガーされません。「テキストビューから2つのスーパーレベル」が機能する場合は、それを使用しますが、正しく指定する方法がわかりません。
私のコード:
ruby - Rubyでは、クラスメソッド内で、selfはクラスですか、それともインスタンスですか?
私はそれself
がインスタンスメソッド内のインスタンスであることを知っています。では、self
クラスはクラスメソッド内にあるのでしょうか?たとえば、次はRailsで機能しますか?
objective-c - Objective-C:self内の「self」値を変更する
NSDateにカテゴリがあり、日付を操作するためのいくつかの関数を実装したいと思います。
だから私はNSDateに次のような関数を持っています:
これは関数内で機能しますが、このメンバー関数の外では、日付は変更されていません。自己はメンバー関数内で作成された単なるローカル変数であると言われたので、この誤動作を理解しています。では、どうすればこれを機能させることができますか?
もちろん、私は書くことができたでしょう:
しかし、日付を変更したくないので、以前に作成した値のいくつかの値を調整するだけなので、インスタンスクラス内でより意味があると思います。
java - Java セルフチェック プログラム (セルフチェックサム)
Java の自己チェック プログラム (自己チェックサム) を少し実行する必要があります。ここに私のコードサンプル
私はそのようなことをしようとしました
しかし、それを確認する方法が本当にわかりませんか??
編集:
回答ありがとうございます
@ Adam Paynter と SpoonBenders
当然、これは私的な使用のためではありません。そして、それを使用してソフトウェアを保護することはありません.....
これは、私のJavaコースのためにやらなければならない「演習」です...
java - Java セルフチェック プログラム (自動チェックサム)
私は小さなJavaセルフチェックプログラムを分析する必要があります ここにサンプルがあります
しかし、mod 16 を実行して結果 = 12 を入れる理由がよくわかりません。