問題タブ [subclassing]

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

objective-c - 「クラス A」をそのサブクラス「クラス B」にキャストする方法 - Objective-C

NSObject のサブクラスである「ClassA」を定義して使用するフレームワークを使用しています。いくつかの変数と機能を追加したいので、当然、「ClassA」のサブクラスである「ClassB」を作成しました

今私の問題はこれです。このフレームワーク内のメソッドの多くは、サブクラスにキャストしたい「ClassA」のインスタンスを返します。

たとえば、次の方法を使用します。

今私のコードで私はこれを試します:

これは問題なく動作します。コンパイル エラーや実行時エラーなどはありません。しかし、私にとって本当に奇妙なのは出力です:

キャスティングは明らかに失敗しました。この時点で何が起こったのかわかりません... objB は「ClassB」と入力されていますが、className は「ClassA」であり、「ClassB」メソッドには応答しません。

これがどのように可能かわかりません...私がここで間違っていることを知っている人はいますか?

ここで求めているものとは正反対の同様の投稿を見つけました

0 投票する
5 に答える
1677 参照

python - int をサブクラス化して Hex 表現を実現する

__and__基本的に、すべての標準の python int 演算子、たとえば、などにアクセスしたいのですが__xor__、特に結果が最終的に出力されるたびに、16 進形式で表現したいと考えています。(電卓を Hex モードにするようなものです)

理想的には、出力の両方の行が 16 進数: 0xfacade である必要がありますが、最初の行は 10 進数: 16435934 になります。

何か案は?

0 投票する
5 に答える
4504 参照

c++ - クラスのサブクラス化を禁止する方法はありますか?

「Base」というクラスと、Base のサブクラスで保護されたメソッドと Base のメンバーにアクセスする「Derived」というクラスがあるとします。

私が今やりたいことは、他のクラスが Derived をサブクラス化できないようにすることです。Java では、Derived クラスを「final」と宣言することでそれを実現できます。同じ効果が得られる C++ のトリックはありますか?

(理想的には、Derived 以外のクラスが Base をサブクラス化できないようにしたいと考えています。Base と Derived は両方ともテンプレート化されているため、すべてのコードを同じクラスに入れたり、friend キーワードを使用したりすることはできません。 Derived よりもテンプレート引数が少ないベース....)

0 投票する
5 に答える
2559 参照

c++ - ファンクターを使用したウィンドウのサブクラス化(Win32)

クイックサニティチェック:ファンクターを使用してウィンドウをサブクラス化することは可能ですか?win procでデータを利用できるようにしたいという状況に遭遇していますが、GWLP_USERDATAはすでに使用されています。ファンクターは良い代替手段のように思えますが、私はそれを機能させるのに苦労しています。

基本は次のとおりです。

すべてうまくいっているように見えますが、メッセージポンプでDispatchMessage()を押すと、「違反書き込み場所0x00000000にアクセス」します。これは明らかに良い兆候ではありません。上記のコードへの呼び出しを削除すると、人生は再び幸せになります。:(それで、これは可能でさえありますか、それとも私はそれを完全に間違った方法で行っていますか?

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

cocoa - NSScroller を大きくする

外部のタッチ センシティブ スクリーン用に最適化された Cocoa アプリケーションを作成しているので、NSScrollView に大きなスクロールバーを作成したいと考えています。スクローラーフレームのサイズを変更しようとしましたが、描画とマウスイベントの両方がスクロール領域でのみ発生し、幅が広くなりません(垂直スクローラーです)。これは私が使用しているコードです (サブクラス化された NSScrollView から):

NSScroller をサブクラス化しようとしましたが、それを拡張する方法がわかりません。

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

compact-framework - CompactFrameworkアプリケーションによって生成されたすべてのWindowsメッセージを処理する

うまくいけば、誰かが問題に光を当てることができます-私は、アプリケーションによって生成されたすべてのWindowsメッセージをリッスン/インターセプトし、通知メッセージやジェスチャーメッセージなどの特定のタイプを破棄しようとしています。

私はMicrosoft.WindowsCE.Forms.MessageWindowを使用してこれを行う方法についての記事を読んでおり、これを継承し、WndProcメソッドをオーバーライドするクラスを作成していますが、アプリケーションが自動的にメッセージキューをリッスン/ウォッチングし始めるようにしています。開始します。

OpenNetCFフレームワークとApplication2名前空間を使用してこれを行うことは可能ですが、現時点ではサードパーティのソフトウェアを使用したくないと思います。OpenNetCFの人には違和感はありません。

うまくいけば、これは理にかなっています。また、C#2.0とWindowsMo​​bile6.5を使用しています。

ご協力いただきありがとうございます、

モリス

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

c# - C#.NETでの外部ウィンドウのサブクラス化

C#で外部ウィンドウをサブクラス化しようとしています。私は以前VB6で同様のものを問題なく使用しましたが、以下のコードは機能しません。誰かが私を助けることができますか?

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

iphone - より薄い UITabBar の作成

Tweetie 2 のように、各項目のタイトルを削除し、それらが占める垂直方向のスペースを再利用することで、UITabBar の高さを薄くしたいと考えています。これは、.xib またはプログラムで設定できないようです。UITabBar をサブクラス化し、自分で作成する必要がありますか?

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

java - 配列のサブクラス化

ストーリーに興味がない場合は、最初の2段落をスキップしてください。

私は友人と配列について話していました。ObjectiveC(これが私の主な言語です)のような「現代」の言語で範囲外のオブジェクトにアクセスしようとすると、配列が(まだ)クラッシュする理由について話していました。そこで私たちは議論に巻き込まれ、範囲外の何かにアクセスしようとしてもクラッシュしない場合にnullを返し、エラーを出力する配列(私はGeniusArrayと名付けました)を彼に書くことができると言いました。

その上で眠った後、範囲外の要素にアクセスしている場合、コードに重大なエラーがあり、アプリがクラッシュするのは悪くないので、修正を余儀なくされることに気付きました。:-D

しかし、それでも:私は自分の主張を証明し、配列をサブクラス化し、基本的にすべてのプログラマーが比較的頻繁に書くifステートメントを追加することでget()メソッドをオーバーライドしたいと思います。

私の友人が「知っている」ので、Objective CではなくJavaでそれをやりたいと思っています(ところで、私たちは両方とも学生です)。

簡単に言うと、配列をサブクラス化しようとしましたが、機能しないようです。私はこれを取得しています:

アクセス制限:必要なライブラリの制限により、タイプAttribute.Arrayにアクセスできません:/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Classes/classes.jar GeniusArray.java