問題タブ [protected]
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++ で保護されたメソッドを単体テストするにはどうすればよいですか?
C++ で保護されたメソッドを単体テストするにはどうすればよいですか?
Java では、テスト対象のクラスと同じパッケージにテスト クラスを作成するか、テスト クラスで必要なメソッドを公開する匿名サブクラスを作成しますが、C++ ではこれらのメソッドのいずれも使用できません。
NUnit を使用してアンマネージ C++ クラスをテストしています。
php - PHPの配列の一部を変更から保護するにはどうすればよいですか?
私は次のようなphpの配列を持っています:
$ myArray = array('name' =>'juank'、'age' => 26、'config' => array('usertype' =>'admin'、'etc' =>'bla bla'));
「config」フィールドを除くすべてのフィールドで変更を許可するには、この配列がスクリプトに沿ってアクセス可能である必要があります。配列または配列の一部が、クラス内でプライベートとして宣言されているかのように変更されないように保護する方法はありますか?定数として定義しようとしましたが、スクリプトの実行中に値が変化します。クラスとして実装すると、アプリケーション全体を最初から再構築する必要があります:S
ありがとう!
iphone - AVAudioPlayer を使用して MP4 を再生するには?
AVAudioPlayer
iTunesジェネレーターからMP4ファイルを再生するために使用したい。私はそれを使用UIWebView
して再生できましたが、「QuickTime」ロゴの代わりに、プレーヤーの背景に選択した画像を配置したいと考えています。
AVAudioPlayerで再生したい m4p ファイルの例を次に示します。
c++ - クラスのサブクラス化を禁止する方法はありますか?
「Base」というクラスと、Base のサブクラスで保護されたメソッドと Base のメンバーにアクセスする「Derived」というクラスがあるとします。
私が今やりたいことは、他のクラスが Derived をサブクラス化できないようにすることです。Java では、Derived クラスを「final」と宣言することでそれを実現できます。同じ効果が得られる C++ のトリックはありますか?
(理想的には、Derived 以外のクラスが Base をサブクラス化できないようにしたいと考えています。Base と Derived は両方ともテンプレート化されているため、すべてのコードを同じクラスに入れたり、friend キーワードを使用したりすることはできません。 Derived よりもテンプレート引数が少ないベース....)
c++ - 親クラスの保護されたデータは子クラスでは利用できませんか?
私は混乱しています。保護されたデータは、C++の特定のクラスの子によって読み取り/書き込み可能だと思いました。
以下のスニペットはMSコンパイラでコンパイルできません
エラーメッセージ:
私は何が間違っているのですか?
java - Java:アクセス修飾子は「protected」よりも制限が厳しく、「private」よりも制限が少ないですか?
protected
フィールドを実装するクラスprotected
とそれをサブクラス化するものだけがアクセスできる、に似たものが必要です。
したがって、基本クラスの変数をとして宣言できるようにしたいのですがprivate
、それでもサブクラスから変数にアクセスできるようにしたいのです。
おそらく、これはサブクラス化、、、private
および/またはの性質そのものに反しprotected
ます。
このようなものはJavaに存在しますか?
c++ - 保護されたメンバーでのC++ランタイムエラー
リンクされたスタック、つまりstructとtypedefを使用して、指定されたポイントで文字列を文字列に挿入する宿題をしようとしています。とにかく、InsertAfterメソッド内のStringModifierクラスのstringLengthにアクセスしようとすると、実行時エラーが発生し、問題が何であるかを理解できません。変数は保護されており、派生クラスはパブリックに継承されているため、変数にアクセスして変更できるはずです。
メインで
StringModifierクラスには、空のコンストラクタとデストラクタがあります。
java - クラスを拡張したのに、保護されたJavaメソッドにアクセスできないのはなぜですか?
保護されたメソッドのドキュメントは次のとおりです。
そして、scoreToSeqメソッドが由来するクラスを拡張するためにこの小さなクラスを作成しました。
c++ - 派生クラス内のクラスの保護されたメンバーにアクセスする
ここに古いコードベースがあり、保護されたメンバー変数を使用していました。これが良いアイデアであるかどうかは、議論することができます。ただし、コードは gcc3 で正常にコンパイルされている必要があります。クラステンプレート Foo から保護されたメンバー x を使用する派生テンプレートクラス Bar があります
また、cleanup() のメソッド宣言では、x で何かが行われています。
これは、gcc3 では機能するはずでしたが、gcc4 では機能しません。に変更すると動作します
なぜそうなのですか?
c++ - C++のテストコードから保護されたメンバー関数にアクセスする
私はC++のテストコードから保護されたメンバー関数にアクセスするための最良の方法を考えようと頭を悩ませてきました。これが私の問題です。
これまでのいくつかの可能な解決策:
すべてのアドバイス/洞察/意見は大歓迎です!
ありがとう