- 1 名前:デフォルトの名無しさん [2007/09/10(月) 12:20:27 ]
- 1 : ◆Manna2uCLg :2005/04/15(金) 13:33:14
Visual C++入門者・初心者からの質問を、 お兄ちゃん達が優しく、時には厳しく回答してくれるスレッドです。 ■質問するにあたって ・エラーや警告のときはエラーメッセージを書きましょう。 ・開発環境も書きましょう。 ・できるだけ具体的に。 質問の仕方については次のページが大変参考になります。 www.hyuki.com/writing/techask.html myu.daa.jp/osiete/ ■回答するにあたって ・回答する場合はその答えに至るための「コツ」も書いてあげると良いでしょう。 (MSDNのどの項目だとか、何のキーワードでGoogleするとか) ・ネタや煽りは軽く流しましょう。 過去スレ、関連スレなどは>>2-5。
- 72 名前:デフォルトの名無しさん mailto:sage [2007/09/19(水) 14:00:02 ]
- 眠りましょう。
眠れなければ医者へかかりましょう。
- 73 名前:デフォルトの名無しさん mailto:sage [2007/09/19(水) 14:13:07 ]
- いつかは寝なければいけないときが来るのだから寝とけ
- 74 名前:デフォルトの名無しさん mailto:sage [2007/09/19(水) 14:22:28 ]
- どうせそのうち寝るのなら、今はがんばって起きていたい
- 75 名前:デフォルトの名無しさん mailto:sage [2007/09/19(水) 17:15:10 ]
- でも眠いんだろ?
- 76 名前:デフォルトの名無しさん mailto:sage [2007/09/19(水) 17:20:22 ]
- 俺の経験から言うと
無理して徹夜するよりきっぱり定時に帰って 明日朝からしゃきっとがんばった方が効率が良いと思って 早朝7時くらいに出社して徹夜するはずだった分を補填しようとするけど 結局5分遅刻して(;´Д`)
- 77 名前:デフォルトの名無しさん mailto:sage [2007/09/19(水) 17:47:55 ]
- あるあるw
- 78 名前:デフォルトの名無しさん mailto:sage [2007/09/19(水) 19:56:19 ]
- 意味わからね。
- 79 名前:デフォルトの名無しさん mailto:sage [2007/09/19(水) 20:25:47 ]
- 正解
- 80 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 00:20:56 ]
- vc6でMFC無しでプログラミングしています。
vector< char >のサイズを動的に確保する配列を使いたくて、 vector <char> *vec; vec = new vector<char>[ size ]; delete[] vec; としたのですが、コンパイル時にdeleteのところで、「配列のdeleteは合わないから*(ポインタ)と解釈するよ」 という旨のワーニングが出ます(開発環境が手元にないのでうろ覚えです) 実行するとdeleteの行で落ちます。 配列の形式でnewしたら配列の形式でdeleteすると理解していて、上記のように書いたのですが、 どういう形でdeleteするのが正しいのでしょうか。 よろしくお願いします。
- 81 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 00:54:33 ]
- >>80
何か間違ってないか? VC6起動して試したけどワーニング出ない 実行エラーにもならない(上記3行だけだけど)
- 82 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 01:01:16 ]
- vector<vector<char> > でいいじゃん
- 83 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 01:40:54 ]
- >>82
死ね
- 84 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 14:50:37 ]
- そんなvectorの使い方はじめて見た。というか意味不明。
- 85 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 14:55:45 ]
- >>84
二次元データを扱うために、vector<vector<float> >なんて使い方するのは常套手段だが。 >80の使い方なら確かに気色悪いと思う。
- 86 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 16:44:18 ]
- >>85
いや、当然>80の話よ。vectorの意味を理解してない気がするので。
- 87 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 18:54:25 ]
- vector<char> vec(size);
こうしたいだけだよな>>80は
- 88 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 19:30:46 ]
- C++の話はどうでもいい
- 89 名前:デフォルトの名無しさん mailto:sage [2007/09/20(木) 21:53:53 ]
- list<vector<char>>
vector<list<vector>::iterator> でいいじゃん
- 90 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 01:29:23 ]
- vector<char>使うならstd::stringを使いたい気分
- 91 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 01:39:46 ]
- boost::ptr_vector<std::string> str_vec(size);
- 92 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 02:02:10 ]
- >>83
死ね って言ってる理由が分からないんだが。 vector<vector<char> > は何か問題あるの?
- 93 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 02:26:14 ]
- >>92
スルー推奨
- 94 名前:デフォルトの名無しさん [2007/09/21(金) 22:15:06 ]
- リソースエディタ経由ではなく直接リソースIDを確保したいときどうしたらいいですか?
Resource.hにじかに編集?
- 95 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 22:38:38 ]
- C++でBot作れますか?
- 96 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 22:51:02 ]
- 作れない方がおかしい
- 97 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 23:10:50 ]
- >>94
resource.h を直接編集してますね 個人的に気をつけてるのは、プロジェクトを閉じてから編集を開始するのと 編集後.apsファイルは削除しておくことくらい
- 98 名前:デフォルトの名無しさん mailto:sage [2007/09/21(金) 23:57:57 ]
- VC++6で、キー入力を捕まえたいんですが、
設置してあるボタンを押したあとだとキー入力を受け付けてくれません。 原因は何でしょうか?
- 99 名前:デフォルトの名無しさん [2007/09/22(土) 00:03:53 ]
- Win32API で
CreateWindowW( とすると引数の情報が出てくるんですけど CreateWindow( では情報がでてきません。 これが普通なんでしょうか? それとも何かファイルが壊れててでなかったりしてるんでしょうか?
- 100 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 00:04:59 ]
- >>98
もっともっともっともっともっともっともっともっともっともっともっともっともっともっともっと詳しく。
- 101 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 00:11:45 ]
- >>99
お前バカじゃねぇの 環境書けよ どうせ2005だろ?仕様だよ
- 102 名前:デフォルトの名無しさん [2007/09/22(土) 00:19:11 ]
- >>100
すみません。 ボタンを押した後、フォーカスがそこにあっていて キー入力を認識しないみたいなんです。 ボタンが押されたときは case WM_COMMAND: switch(LOWORD(wp)) { ・ ・ ・ case ID_CF: if(field_flag==FIELD1) field_flag=FIELD2; else field_flag=FIELD1; InvalidateRect(hWnd, NULL, TRUE); break; } のようなかんじで、 キー入力の受け付けは case WM_KEYDOWN: GetKeyboardState(state); if(state[VK_UP] & 0x80){ if(mode_flag==HAITI){ ・ ・ ・ } でやっています。
- 103 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 00:24:07 ]
- わろた
- 104 名前:デフォルトの名無しさん mailto:age [2007/09/22(土) 00:33:34 ]
- インラインアセンブラが使え無い言語は
基本的に劣っていると考えたい・・・
- 105 名前:デフォルトの名無しさん [2007/09/22(土) 00:34:16 ]
- すみません、超初心者なんで・・・どうしたらよいのでしょうか?
- 106 名前:デフォルトの名無しさん mailto:age [2007/09/22(土) 00:38:05 ]
- ワロタら良い
- 107 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 00:39:10 ]
- 原因がわかりました。
どう調べたらいいのか分からなかったので・・・ ありがとうございました。
- 108 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 00:49:50 ]
- ソーセージ買いに行ったら自己解決しとった
- 109 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 00:57:06 ]
- 今からオナルんか?
まんこ臭くなるから気を付けろよ
- 110 名前:デフォルトの名無しさん mailto:age [2007/09/22(土) 01:10:27 ]
- エラー デバッグ ブラウザ ツール
www.mozilla-japan.org/ シンプル プログミング ツール proforceone.web.fc2.com/ 素因数分解サンプルプログラム Calculation processing にコピーして[RUN] A=2*3*5*11*13*17*19; x=A;br();write(" "+x+" ⇒"); for(i=2;x>=i;i++){if(0==x%i){k=0; for(j=2;(i>=j)&&(1>=k);j++){ if(0==i%j){k++;} } if(1==k){write(" "+i);} }}
- 111 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 01:51:49 ]
- インラインアセンブラじゃなくてインラインフォートランにすればいいのに
- 112 名前:デフォルトの名無しさん [2007/09/22(土) 03:22:01 ]
- strtokがエラー出るんだけどなんで?
strtokのソースの中で検索ヒットした文字に\0で置き換えするところでアクセス違反起きてる ちゃんと文字列の中アクセスしてるはずなのになんで?どうして?
- 113 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 03:23:17 ]
- お前がバカだから
- 114 名前:デフォルトの名無しさん [2007/09/22(土) 03:32:47 ]
- マジで?
- 115 名前:デフォルトの名無しさん [2007/09/22(土) 03:35:13 ]
- くまった
- 116 名前:デフォルトの名無しさん [2007/09/22(土) 06:13:46 ]
- ローカルの変数にコピったら動いた!!!!1
頭いいかもしんない。ここのみんなじゃ無理だったかも・・・
- 117 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 06:15:15 ]
- お前の事だからそんなこったろうと思ったよ
頭わるすぎw全米がわろた
- 118 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 10:26:33 ]
- >>116
無理だったね。 112に書いてあることだけで答えを導き出すには、 おそらく一級のエスパーが必要だったろうから。
- 119 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 10:34:37 ]
- >>116
正解だったね。 113に書いてあるとおりで答えを導き出せないのは、 おまえが超級のパーである証明だったろうから。
- 120 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 10:38:46 ]
- VC++5.0(mfc42のヤツ)のインストールについて教えてください。
WindowsXPが出始めた頃にVC++5.0をインストールして普通に使えていたのですが、 XPのSP2を入れたらInfoViewerが表示できなくなってしまいました。 (HTTP 404 - ファイル未検出)とか言うエラーが表示されます ググッったら、以下のような情報を見つけました。 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_DISABLE_MK_PROTOCOL に新規キーで「MSDEV.EXE=dword:00000000」を作成 が、そのときにはVC++5アンインストールと再インストールをしてしまっていました。 (上の情報を早くみつけていれば、レジストリの修正だけですんだのに。。) インストールしなおしたVC++5.0では、上記のレジストリキーを設定しても やはりinfoViewの内容を表示させるとエラーになります。 なにか解決方法をご存知の方がいらっしゃったらだったらご教授ください。 よろしくお願いします。
- 121 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 10:40:18 ]
- 新しいのにする
- 122 名前:デフォルトの名無しさん [2007/09/22(土) 11:11:35 ]
- CDC *pdc = GetDC();
pdc->Ellipse(x1, y1, x2, y2); とかのEllipseの引数を自分で作ったクラス(myclass)にしたい場合 CDCクラスにEllipse(&myclass)みたいなのを作る myclassにEllipse(&CDC)みたいなのを作る CDCクラスとmyclassを継承したクラス(myCDC)にEllipse()を作る(1行目もmyCDC *pdc = GetDC();) どれが普通なんでしょう
- 123 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 11:33:27 ]
- >>97
サンキュー やっぱそんなかんじか。マイクロソフトはホントダメだな。
- 124 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 11:40:55 ]
- マイクロソフトがダメなんじゃなくてお前がダメw
- 125 名前:デフォルトの名無しさん mailto:age [2007/09/22(土) 12:11:02 ]
- JavaScriptに近いC++ありませんか?
- 126 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 12:16:04 ]
- C++0x
- 127 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 12:35:50 ]
- >>122
フレームワークの中身を書き換えるなんて原則もってのほか。だから1はない。 3番目の案は悪くないが、GetDCがCDCへのポインタ返すのに myCDCへのポインタとして扱うことは、 (これくらい動くだろうが)規格上、未定義なので気持ち悪い。 仮にGetDCがmyCDCへのポインタを返すように書き換えるとしても それは1と同じ理由で却下。 残るのは2番。
- 128 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 12:37:46 ]
- 人はそれをヘルパ関数と呼
- 129 名前:デフォルトの名無しさん [2007/09/22(土) 16:42:49 ]
- CButtonとかはリソースエディタで追加するとそのまま使えるのに
手で追加するとなぜCreateを呼ばないといけないの? リソースとして追加した場合なんでCButtonのインスタンスが無いの?
- 130 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 16:52:16 ]
- ボタンはコントロール
C++のクラスではない CButtonはそれをMFCで扱うためのクラス
- 131 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 16:56:43 ]
- ダイアログ上のコントロールは、
ダイアログ作成時にWindowsが作る(そのためのダイアログだ)。 あとは、作成されたコントロールとソース上のCButtonとを 関連付けるだけなので、Createする必要がない。
- 132 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 17:13:43 ]
- >>130-131
なるほど。。つまり以下の様に理解したけどOKですか? (1)リソースとしてボタンを追加した場合、MFCのダイアログクラスが初期化のときに自分でそのボタンをCreateしている。 (しかもダイアログクラスはボタンが必要だという情報をリソースファイルから得ている?(だってソース上は見当たらないからなぁ。)) (2)リソースとして追加したうえ、変数を割り当てるとそのCButtonクラスと、内部で生成したボタンコントロールのウインドハンドルをどこかで関連付けている。 (3)リソースエディタを使用しない場合、ダイアログはそのコントロールを作成しない。だから自分でCreateを呼ぶ必要がある。
- 133 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 17:20:07 ]
- >>132
>(2) つ[OnInitDialog()]
- 134 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 17:27:32 ]
- >>133
ありがとうございます。ステップ実行してOnInitDialogでなんかごにょごにょして、その過程でCButtonのメンバが有効な値をもつようになったの確認できました
- 135 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 18:40:37 ]
- 教えるだけ無駄なようだね
- 136 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 18:59:37 ]
- 本当は教える知識がないんでしょ?w
- 137 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 19:01:01 ]
- えぇーどんだけーってレベルでしょ
- 138 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 19:16:31 ]
- いかほどぉ〜
- 139 名前:デフォルトの名無しさん mailto:sage [2007/09/22(土) 19:40:58 ]
- >>132
(1)、「MFCのダイアログクラス」ではなく、「Windows」。
- 140 名前:デフォルトの名無しさん [2007/09/23(日) 00:15:44 ]
- まず何から勉強すればいいですかね?
- 141 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 03:31:07 ]
- >>140
C→C++→Cでwin32apiをかじる→MFCでわけわかんなくなる。 →それでもがんばる→疲れる→Cが恋しくなる→でもC++でがんがる →どうでもよくなる。
- 142 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 07:37:51 ]
- Cを少しかじる→C++でわけわかんなくなる→MFCをかじる→感動する→C++も分かった気になる
→win32apiも分かった気になる→Cが恋しくなる→久しぶりにCに戻ってみる→ MFCが恋しくなる→でもがんばる→むかついてどうでもよくなる。
- 143 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 09:02:44 ]
- Cを少しかじる→むかついてどうでもよくなる。
- 144 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 09:13:07 ]
- visual C++ からg++なんかの外部のコンパイラを使うにはどうすればいいの?
- 145 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 09:42:04 ]
- cl.exeを置きかえる
- 146 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 10:36:42 ]
- カスタムビルドステップ
- 147 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 11:59:54 ]
- むりむりかたつむり!
- 148 名前:デフォルトの名無しさん [2007/09/23(日) 16:42:12 ]
- WM_KeydownのところでOnKeyDownを追加したんですが、
キーボードから何を押してもそこへ飛んでくれないんですが これって何か初期設定みたいなのが必要なんでしょうか?
- 149 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 17:07:53 ]
- WM_KEYDOWN を受け取ろうとしているウィンドウにフォーカスが当たってないんじゃない?
たとえば、ダイアログ上のエディットボックスでキーを押した場合、 WM_KEYDOWN が飛んでくるのはダイアログじゃなくてエディットボックス
- 150 名前:デフォルトの名無しさん [2007/09/23(日) 17:19:31 ]
- >>149
ダイアログをクリックしてから押してるんだけどうんともすんとも ちなみにダイアログだけのプログラムでダイアログにはボタンが6個あるだけです
- 151 名前:デフォルトの名無しさん [2007/09/23(日) 18:28:26 ]
- Visual Studio2005使って、Windoxsフォームアプリケーションやってるけど
リソースの使い方がわからない…
- 152 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:31:20 ]
- がんばれ
- 153 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:35:06 ]
- Windoxs
- 154 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 18:53:38 ]
- >>151
すっげーなお前 Visual Studio2005使って、Windoxsフォームアプリケーションなんかやってるんだ
- 155 名前:デフォルトの名無しさん [2007/09/23(日) 18:54:42 ]
- >>154
普通は何やるんですか?
- 156 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:24:53 ]
- >>155
次期SPや修正パッチなどの出荷用テスト
- 157 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:41:56 ]
- 私、昨日買ったばっかなんですが、勉強したくて
- 158 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 19:47:07 ]
- 初心者向けの製品は別にあるよ
- 159 名前:デフォルトの名無しさん mailto:sage [2007/09/23(日) 20:12:47 ]
- 本か何か買ったの?
それ見てやればいいんじゃね?
- 160 名前:デフォルトの名無しさん [2007/09/23(日) 21:31:01 ]
- 最近のWindowsアプリケーションはいったいどんな種類があるの?
自分はダイアログベースアプリが80% 10%はDLLやStaticLib 時々SDIアプリ たまーにActiveX GUI系で最近の流行ってなんですか?
- 161 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 07:02:02 ]
- スリープ(モニタ電源OFF)から復帰すると動作がおかしくなってるのですが
なにか特別な処理をする必要があるのですか?ソフトはアナログ時計です。 なおPC不調でサスペンドから復帰できなくなってるのでサスペンドの場合はどうなるのか 不明です。
- 162 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 07:12:33 ]
- サスペンドの場合はPCの電源が即座に切れ二度と起動しなくなります。
- 163 名前:デフォルトの名無しさん [2007/09/25(火) 22:01:23 ]
- Visual C++と、標準C++って何が違うんですか?
- 164 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 22:19:24 ]
- Visual C++は商品名で標準C++は言語名
- 165 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 22:31:11 ]
- Visual C++で、入門者がMFCを最初にやるのは馬鹿ですかね?
- 166 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 23:51:53 ]
- C++ をよく理解してるんならいいんじゃないのかな。
でも Windows プログラムの動く仕組み理解しておいた方がいいんじゃないかな
- 167 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 00:09:05 ]
- VisualC++で、キーボードからの入力をテキストファイルに保存したいんですけど、どうしたら出来ますかね?
- 168 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 00:39:39 ]
- 1)キーボードから入力を受け取って
2)ファイルに書き込む といいよ
- 169 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 00:55:04 ]
- >>167
キーロガー作ってパス盗む気か
- 170 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 01:11:12 ]
- ついでに特定のサイトを見ているときだけ保存したいんですけど、どうしたらできますかね?
- 171 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 02:41:42 ]
- >>170
釣りは死んでください。
- 172 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 02:45:01 ]
- はい
|

|