質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.12%
MFC

MFC (Microsoft Fouondation Class)とは、MicrosoftがVC++用に開発したWindows用アプリケーションのフレームワークです。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

解決済

64bit数値の配列を、既存のクラスや型で管理するとき、よい方法はありますか?

yamekodev
yamekodev

総合スコア16

MFC

MFC (Microsoft Fouondation Class)とは、MicrosoftがVC++用に開発したWindows用アプリケーションのフレームワークです。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

2回答

0リアクション

0クリップ

566閲覧

投稿2021/08/16 06:02

編集2021/08/16 06:36

やりたいこと
CUintArrayで管理していた32bitの数値が64bitになることになったので、
拡張したい
CUintArrayと同様、できれば宣言時に要素数を気にしたくない

調べたこと
CUint64Arrayというクラスはなかった
20分ほどググったがいい方法を見つけられていない

今考えている方法2つ
1 __int64型のただの配列に格納する
2 CStringArrayに文字列として格納し、使うときに数値に変換する

今考えている方法の問題点
1 CUintArrayを使っていた時は宣言時の要素数は不要だったが、ただの配列になると必要になる。今回、要素数が固定でないため、別の場所にある要素数を参照する設定をする手間が増える
2 数値を文字に変換して格納し、使うときにまた数値に戻すのが少し面倒・手間がかかる

初歩的な質問かもしれませんがよろしくお願いいたします。

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

coco_bauer

2021/08/16 06:13

「配列を既存のクラスや型で管理する」というのは、具体的には何をするという事ですか? 配列を扱うときには要素数を考慮する必要があると思うのですが、「要素数を気にする必要があるのが面倒・手間がかかる」という問題を、どのような手段で解決しようと考えているのですか? こうした事の詳細を質問に追加すると、適切な回答が得られるのではないでしょうか。
dodox86

2021/08/16 06:27

MFCであれば、使っている時点で特有の話なので初歩的な質問とは言えないと思います。CUintArrayとだけ書いて何のことやら分かる人は今や少ないのでは?
yamekodev

2021/08/16 06:35

coco_bauerさん 説明不足でした。申し訳ありません。 もともとCUintArrayを使っていた時は宣言時の要素数は不要でしたが、ただの配列になると必要になります。 要素数が固定でないため、別の場所にある要素数を参照する設定をする手間が増えるということです。 dodox86さん 申し訳ありませんが、この質問が初歩的かどうかという議論をしたいわけではないです。
episteme

2021/08/16 10:41

だったら「初歩的な質問かもしれませんが」は余計。
yamekodev

2021/08/17 00:57

今後は質問や回答に直接関係がないフレーズは書かないように気を付けます。
fana

2021/08/17 02:21 編集

そんな重箱の隅的な至極どうでもいい話に反応するよりも, 回答に対してその話で 良いのか悪いのかetc の応答を行うべきではないのか. 現状, MFCで用意されているものを使うパターン と C++標準なものを使うパターン の2つの回答がある. CArrayとstd::vectorの比較とかは相応にググればそういう話も見つかるだろう.
yamekodev

2021/08/17 02:32 編集

失礼しました。ベストアンサーを決めました。 また、回答内容の方針・考え方についてのご教示もありがとうございました。
fana

2021/08/17 02:52

選んだ理由がしっかり明記されていて,とても良いと思いました. (どーでもいい話については,あなたの 2021/08/17 09:57 のコメントで収束するだろう,と見えたけども,このteratailでは何故かそこで終わらないようなこともわりとあり得る(!?)ので,念のため予防的に書いてみたという感じ)

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.12%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

MFC

MFC (Microsoft Fouondation Class)とは、MicrosoftがVC++用に開発したWindows用アプリケーションのフレームワークです。

Visual Studio

Microsoft Visual StudioはMicrosoftによる統合開発環境(IDE)です。多種多様なプログラミング言語に対応しています。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。