問題タブ [friend-class]
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++ で保護された仮想関数にアクセスするフレンド クラス
Class A
、Class B
およびの 3 つのクラスがありClass C
ます。からClass B
です。で宣言されたピュアは で定義されています。クラス C はクラス A の関数です。クラス C からそれを呼び出す必要があります。コンパイルしようとすると、エラーが発生します。derived
Class A
protected
virtual function
class A
Class B
friend
virtual function
cannot access protected member declared in class A
それは可能ではありませんか?
編集:コードが追加されました:
c++ - 別のクラスの作成に new を使用するかどうか
私は質問、Dijkstra's Algorithm を C++ で解いています。隣接リストを使用して実装しました。
だから私は のクラス、node
のクラス、のクラスを持ってminHeap
いGraph
ます。
minHeap
クラスをこのように (フレンド関数を使用せずに) 定義しgetDijkSP()
、その関数内でのみオブジェクトを使用できるように、通常どおり関数内にオブジェクトを作成しますか?
(または) new キーワードを使用しminHeap
てクラスのオブジェクトを作成できるように、フレンド関数を使用してクラスを定義しますか? (これは、クラスのスコープ内でオブジェクトをminHeap
定義するのに役立ち、他の機能のすべての関数でも使用できるようになります。)minHeap
Graph
私はこれと他のいくつかの記事を読みましたが、特に、このような同様の種類の質問に対する両方の方法の利点、欠点、および適切性を知りたい.
わかりやすくするために、クラスのコンストラクターを提供しました。
c++ - フレンド クラスとオーバーロードされた演算子
まず、これは学術的な目的のためです。私は非常にイライラしており、友人と半日もの間これを解決していました.
私たちはオーバーロードされた演算子とフレンド クラスの両方を扱っていますが、このラボでは完全にバカだと感じました。以下に重要なコードを掲載しますが、プロジェクト全体は投稿の下部にある zip ファイルになります。エラーがいっぱいで、コードの一部を保存することを拒否していると確信しています (例外をスローし続けます)。
これは、プライマリ クラスのヘッダー ファイル コードです。
NumDays オブジェクトを Overtime クラス コンストラクターに渡そうとする私の試みは気に入らないようですが、私の理解では、残業オブジェクトは各 NumDays オブジェクトで構築されるため、このように動作するはずです。
2 番目の問題は、オーバーロードされた演算子に関するものです。私はこれに頭を悩ませることが少なくなり、なぜそれほど具体的に実装する必要があるのかという問題が増えました。
これは、オーバーロードされた演算子のコードです
<< オーバーロードのファンではないことは間違いありませんが、基本的には自分の本からコードを直接コピーして、これを実行しようとしました。
元のコードのリンクは壊れていました。ここに恒久的なリンクがあります。http://www.mediafire.com/file/j4q3fln9a8p98ll/dayCounter.zip
また、私のコードを多少修正しました。完全には動作しませんが、コンパイルしてほとんど動作します。http://www.mediafire.com/file/g5m21drbuab8tso/Lab5workCounter.zip
c++ - フレンド クラスは、C++ でそのフレンド クラスからオブジェクトを作成できますか?
これらは、2 つのクラスを宣言する 2 つの C++ ヘッダー ファイル内のコードです。一方は他方のフレンドです。
==>最初のクラスは、ハッシュ テーブルを作成し、与えられたファイルから単語を入力します。
2 番目のクラスでは、最初のクラスからオブジェクトを作成し、最初に作成したオブジェクト内のハッシュ テーブルを埋めてから、重複と見なされるすべての単語を削除することによって、最初のクラスからオブジェクトを作成し、それに基づいて操作したいと考えました (レーベンシュタイン距離が特定の比率に近い場合)。 .
問題は、コードをコンパイルするとエラーが発生することです: ([Error] 'Hash_class' does not name a type) 可能であれば、方法またはそれについて学べるソースを教えてください。それが不可能な場合は、いくつかのヒントが役立ちます。
(「GCC 4.3.2 を使用しています」)