問題タブ [bless]

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 投票する
8 に答える
109827 参照

perl - Perlの「祝福」は正確には何をしますか?

クラスの「new」メソッド内でPerlの「bless」キーワードを使用していることを理解しています。

しかし、そのハッシュ参照に対して「bless」とは正確には何をしているのでしょうか?

0 投票する
4 に答える
17445 参照

perl - Perlでオブジェクトの祝福を解除するにはどうすればよいですか?

perldoc -f blessから:

bless REF,CLASSNAME

この関数は、によって参照されるREFものに、それがパッケージ
内のオブジェクトになったことを通知します。CLASSNAME

不必要なコピーをせずに、祝福されていない構造を取得する方法はありますか?

0 投票する
4 に答える
839 参照

perl - 祝福するかしないか、それが私の質問です!

初心者ユーザーからの最初の投稿。私がグーグルで検索するすべての質問は、私をここに連れてきてくれるようで、私が探しているものに対する素晴らしい答えをいつも得ています。当然のことながら、これは、Perl での祝福の使用法について熟考し始めた最初の目的地でした。

Perl の OOP を始めたばかりで、今日、bless が何をするのかを尋ねる投稿を読みました。スカラー/ハッシュ/配列をオブジェクトに参照し、必要に応じて「アタッチ」することを理解しました。

Perl で見られるクラスの例のほとんどでは、他の言語で見慣れているようなプロパティを持っていないようです...

そこで、何が起こるかを確認するために、プロパティを持つ愚かなクラスを作成しました。プロパティの値をすぐに「NIL」に設定し、次に「Nil ではありません!」と設定しました。コンストラクターで。メソッド LIST を使用して、プロパティを出力することができました。予想どおり、「Not Nil!」と出力されました。

私の質問は、プロパティが期待どおりに機能する場合 (本体で宣言されている場合)、なぜ bless を使用するのですか? スカラー/ハッシュ/配列をプロパティとして作成したり、必要な参照をプロパティとして作成したりできる場合に、その参照を持つことの追加の利点は何ですか?

私が尋ねようとしていることを十分に説明したいと思います.Perlで非常に環境に優しいです:)

0 投票する
3 に答える
412 参照

perl - Perl read_config サブ、おっと?

構成ファイルなどを解析するために頻繁に使用するパッケージ(実際には1つのサブルーチンのみ)があります。基本的には次のようになります。

かなり基本的ですが、これをOOPに書き直す方法 (および場合) を考えていましたか? 本当に学ぶためだけに、いつ、なぜblessを使用するかはあまり見たことがありません。=)

ありがとう!

0 投票する
1 に答える
214 参照

perl - Perl: 参照/祝福の質問

アイデアは、TIEHASH コンストラクターで [配列、Thread::Conveyor キューなど] のリストを取得するクラスを実装することです。

オブジェクト参照 (前述のThread::Conveyorオブジェクトなど) を渡して配列参照をコンストラクターに渡し、オブジェクトにアクセスできるようにする正しい方法は何ですか? 渡されたオブジェクトを祝福する必要がある場合はありますか?

0 投票する
3 に答える
426 参照

perl - Math :: Cartesian :: Productが祝福されたオブジェクトを返すのはなぜですか?

Math :: Cartesian :: Productは、単純な配列の配列ではなく、祝福されたオブジェクトの配列を返すことに気づきました。理由がわかりませんでした。結果を使用するには、実際に追加の作業を行う必要があります(ただし)...

0 投票する
2 に答える
296 参照

perl - コンマ区切りの操作はperlでどのように機能しますか?

私は現在 Perl プログラミングを勉強しており、次のようなステートメントに出くわしています。

return bless { };をするかは知っていますし、どうするかも知っていreturn $type;ますが、それらをコンマで区切るとどのようにステートメントに影響し、すべての単項演算子で同じように機能しますか?

0 投票する
1 に答える
839 参照

perl - Perlで文字列を祝福するにはどうすればよいですか?

文字列変数を祝福しようとしています - 以下のコードに示されています。Bless は、ハッシュまたは配列を使用する場合にのみ機能するようです。ストリングスを祝福することはできますか? いいえの場合、何を祝福できますか? 私はしばらくデバッグしてきましたが、どんな助けでも大歓迎です。:-) コードに誤りがある場合は、その内容をお知らせください。

これはperlファイルです。コードは終了していませんが、「Page End」ステートメントに到達することはありません。だから長くするのはやめました。$FileInfo は、以前にファイルから読み取った配列定義ですが、構文のためにここで文字化けします。

これは、オブジェクト参照を構築するための呼び出しです

0 投票する
1 に答える
3856 参照

perl - くそー、Perl は私のオブジェクトを bless できない

import駄洒落はさておき、 Perl クラスにメソッドを実装してData、ハッシュリファレンスの適切な配列から、本質的にハッシュリファレンスの美化された配列であるオブジェクトをインスタンス化しようとしています。

これを使用する方法の例を次に示します。


私のimport実装は次のとおりです。

驚くべきことは、 Perlがコンパイルにエラーを報告することです(BEGINブロックに注意してください):

perldiag何が起こっているのかをあまり明確にしませんでした:

参考値以外は祝福できない

(F)ハードリファレンスのみが祝福されます。これが、Perl がオブジェクトのカプセル化を「強制」する方法です。を参照してください perlobj


オブジェクトの初期化とデータの追加を 2 つの別々の手順で試してみました。

これにより、次のコンパイル時エラーが発生しました。


2 つの質問:

  1. 私がしたことの何が問題なのですか?
  2. 誰かperldiagがこのコンパイル時エラーの説明を明確にしてもらえますか?
0 投票する
2 に答える
269 参照

perl - Perlのパラメータ入力メカニズムの違いは何ですか?

ダウンロードした Perl モジュールを読んでいるときに、入力パラメーターを定義するいくつかの方法を見つけました。それらの違いは何ですか?