
お忙し中、失礼します。
プログラミングのついて質問させて下さい。
使用言語: C++
使用ヘッダファイル:<map>
[質問]
動的確保したstd:mapを解放したいのですが、
mapの第二引数にクラスポインタを与えた場合、
登録したクラスのメンバ関数を呼び出すことは
出来るでしょうか?
もし可能ならば、方法を教えて頂けないでしょうか??
自作クラス
class C;
class test
{
//メンバ変数
private:
C m_pC;
//メンバ関数
public:
test(); //コンストラクタ
~test(); //デストラクタ
//初期化処理
void Init()
{
m_pC = new C();
}
//終了処理
void Term()
{
delete m_pC;
m_pC = NULL;
}}
};
map 定義
map< ID , test* >* pMap;
マップ解放処理
std::map< ID ,test*>::iterator iterator;
iterator = pMap->begin();
for(iterator ; iterator != pMap.End();iterator++)
{
//************************
//
// ここでtestクラスの解放処理を呼び出したい
// 例) test->Term()
//
//*************************
}
//マップ登録要素クリア
pMap->clear();
まだ、mapの仕様が分かっておらず勉強中の身で
申し訳ないです。
助言頂ければ幸いです。
どうかよろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
std::map<X, Y> の個々の要素は std::pair<const X, Y> で、イテレータも pair を指しています。
pair のそれぞれの要素は first, second メンバとしてアクセスできるので、
test* p = iterator->second;
p->Term();
あるいは、同じことですが
iterator->second->Term();
で実現できると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) pythonのmap、結果の利用は1度だけ? 5 2022/06/11 12:33
- Java java final 1 2022/06/10 22:49
- C言語・C++・C# このプログラミング誰か教えてくれませんか 3 2022/05/13 17:27
- C言語・C++・C# このプログラミング誰か教えてくれませんか 2 2022/05/14 09:45
- C言語・C++・C# 質問です 下記のコードを分かりやすく解説お願いします 初心者です #include ‹stdio.h 3 2022/05/26 22:03
- Visual Basic(VBA) VBAでfunctionを利用しようとしたときに「引数は省略できません」というエラーが出ます 1 2022/10/15 16:30
- Java どんな時にIteratorを使うと便利なのですか 2 2022/12/07 05:30
- JavaScript [再掲]指定したパスが現URLに含まれていたら特定要素を削除するJavascriptのコードについて 1 2023/05/10 15:09
- 英語 日本人で、英語がネイティブ並みに理解できたり、話せる方に質問です。 英語を聞いて理解するまでに、一度 4 2022/11/16 00:30
- その他(プログラミング・Web制作) このプログラミング誰か教えてくれませんか 4 2022/04/29 15:56
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
number_formatが勝手に四捨五入
-
PHPでXMLの置換 replaceData
-
クラス内で上位クラス内メンバ...
-
String変数の文字列の検索方法
-
関数の入れ子ができない。
-
pg_fetch_assocにて取得した、...
-
VCでJetによるCSVファイルの読...
-
phpでmysqldump作成
-
正規表現に関する質問です。HTM...
-
VBA コレクションに2次元配列...
-
PHP3からPHP5にVerUpすると動作...
-
PHP の system コマンド
-
httaccessでURL末尾のスラッシ...
-
現在PHPとsmartyを勉強している...
-
ファイル書き込みでの改行
-
複数のアドレスに統一したCooki...
-
chmod(): Operation not pe
-
レスポンスから値を取得したい
-
次のhtml・cssでspan内の文字を...
-
128ビットの接続セキュリティー
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA コレクションに2次元配列...
-
VB.NETからVBAマクロ(引数)を呼...
-
PHP、ヒアドキュメント内でのIF...
-
エラーの理由が分りません。Pri...
-
どういうプログラムを関数化を...
-
可変変数にアロー演算子を使いたい
-
protectedなのにアクセスできな...
-
PHPの名前空間インポートについて
-
ASPのResponse.WriteをPHPでは...
-
[C++]std:mapの扱いを教えて頂...
-
vb作成したらでbeep音が鳴りま...
-
PHPの変数値をリンクさせたい
-
次のhtml・cssでspan内の文字を...
-
既存関数の上書き
-
classの再定義エラーについて
-
[C#]Arraylistに追加した構造体...
-
.htaccessについて
-
共用体のサイズをsizeofで
-
PHPで呼び出し元の関数名の取得...
-
PHPでの画像の形式の変換
おすすめ情報