No.2
- 回答日時:
>独自コレクション
出来ると思います。どんなの作るか知りませんが、CObjectあたりを継承して作るとやり易いと思います、
一応、VCでもMFCにコレクションが用意されています。
CArray,CMapとか色々あります。
で、C++自体にもテンプレートとして、MapとかVectorとかあります。
ただ、VC++で使う場合、オプションの設定しないとエラー出ます。
>>foreach文
これはVCには無いです。ていうか、、、いらない(=w=;
ありがとうございました。
MFCのCArrayは使わずに、.netのArrayListを使っているので。
言葉足らずで申し訳ありませんでした。
No.3
- 回答日時:
C++では、foreach文はありませんが、std::for_each関数ならあります。
もっとも、使い方がC#のforeachとはかなり異なりますし、.NETのコンテナを使うためには、ForwardIteratorの要件を満たすようにアダプタを作る必要がありそうです。(あるいはSTL.netを待つか)
C++には、元々強力なコレクションが備わっています。
vector, deque, list, map, set, bitset, valarrayなどです。それで足りなければ、Boost C++ Librariesなど、適切な外部ライブラリを使うことも出来ます。
独自にコレクション(というかコンテナ)を作ることももちろんできます。
なお、vectorなどのコンテナクラスは、そのままではマネージドクラスのポインタを直接扱うことはできませんが、テンプレート引数のアロケータを適切に定義すれば、それなりに動くものができるかもしれません。
No.4ベストアンサー
- 回答日時:
「Visual C++ .NET フレームワーク」って限定しているのだから、
MFCのコレクション使うのが普通ですよ。
VC++では一般的に、C++デフォのvector, deque, list, map等は、滅多に使いませんよ。
ありがとうございました。
>MFCのコレクション使うのが普通ですよ。
そーなのですか?.netだとフレームワーク(.net)を使うものだと思っていました。(^^; 何のためにマイクロソフトは作ったのでしょうね。金儲けのためか。Cユーザはいろいろ言語があって大変ですね。
No.5
- 回答日時:
ちなみに下記URLには、.NET Frameworkでのカスタムコレクションの作り方が書かれていますが、静的な型安全性もなければ、例外安全性が保障されているかどうかもわからない、10年以上前のコンテナを髣髴させる代物ができてしまうこと間違いなしです。
参考URL:http://support.microsoft.com/default.aspx?scid=k …
ありがとうございました。
こんな感じのを作成したかったのです。
文面が分かりにくく皆様にはご迷惑をおかけしました。m(--)m
ただ、
>例外安全性が保障されているかどうかもわからない
そーなのですか?私はもう少しオブジェクト指向のロジックの組み方を勉強した方が良いみたいですね。
クラス単位で作成し、クラス単位でデータを保持して、クラス単位で完結して、使用するときにメインクラスで使用しようと思っていたのですが...
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Windows 10 Visual StudioとVisual C++ Build Toolsについて 1 2023/04/16 03:42
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
- Visual Basic(VBA) フレームワーク「4.8.1」で、[Sub Main]が動かない。助けて下さい 3 2022/11/14 15:40
- C言語・C++・C# 「using Windows」でエラーが出る 3 2022/12/23 19:53
- ソフトウェア VisualStudio のデータブレークポイントを有効にする方法 1 2023/05/01 09:42
- Microsoft ASP ASP.NETや.NET、C#とかVBとか 2 2022/05/16 21:16
- その他(プログラミング・Web制作) .netに近いjsフレームワークは何ですか 2 2022/05/12 22:28
- C言語・C++・C# visual studioでフォームデザインを作成する時のVB.netとC#の違い 2 2023/06/22 03:04
- C言語・C++・C# visual studio 2019 についての質問です 1 2022/09/21 09:58
- C言語・C++・C# C# 標準出力のencodingをutf8にする 1 2023/02/15 12:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
asp.NET初心者です。「 ’Contex...
-
【ASP.NET】フォームの継承は出...
-
c# 文字列の最後から1文字削除...
-
オートマトンNFAからDFAへの変換
-
Excel:「フォーム」のボタンで...
-
Q&Aフォームを作成したいのです...
-
ブラウザの×ボタン判定
-
複数選択のListBoxでClickイベ...
-
コネクション・セッション・ト...
-
画面遷移が不正ですと表示されます
-
SUBMITボタンを表示させないでS...
-
システム開発の工数と費用について
-
SPREADでカーソルの位置を1行目...
-
DataGridViewのチェックボック...
-
dos画面が一瞬立ち上がる
-
PHPからWindowsログインユーザ...
-
今更、VBAでRPA、キーボード操...
-
チャレンジタッチの画面にスマ...
-
エクセルVBA 別のブックのユ...
-
ASP.NET 電卓計算
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
asp.NET初心者です。「 ’Contex...
-
GridViewの行をダブルクリック
-
【C言語】JPEGのEXIF情報を書き...
-
【ASP.NET】フォームの継承は出...
-
MACアドレス
-
httpsのサイトをC#でgetまたはpost
-
複数の aspx で一つのクラスの...
-
サーバOSとクライアントOSの判...
-
x.aspxとx.aspx.vbの値の受渡に...
-
VB2005 継承元のResourcesが継...
-
VB2005ExpressEditionでのフォ...
-
C# RichTextBox 選択中の色
-
コネクション・セッション・ト...
-
Accessの画面更新を一時的に停...
-
画面遷移が不正ですと表示されます
-
HTMLボタンの文字色を変え...
-
c# 文字列の最後から1文字削除...
-
DataGridViewのチェックボック...
-
VBAで一時中断したプログラムの...
-
複数選択のListBoxでClickイベ...
おすすめ情報