■過去ログ置き場に戻る■
1-
次250
最新50
[memo]
"9999999999_00.html#R20"
という感じで、URLの最後に "#R
レスNo
" を追加すると幸せになれます。
★初心者にVisual C++を教えるスレ★ Part5
1
名前:
987
:03/03/27 02:05
タイトルのとおり、
Visual C++ 初心者用スレッドです。
前スレ・関連スレは、
>>2
ぐらい。
2
名前:
987
:03/03/27 02:05
/** 前スレ **/
★初心者にVisual C++を教えるスレ★ Part4
http://pc2.2ch.net/test/read.cgi/tech/1044196393/l50
★初心者にVisual C++を教えるスレ★ Part3
http://pc2.2ch.net/test/read.cgi/tech/1038160750/l50
★初心者にVisual C++を教えるスレ★ (←実はPart2)
http://pc3.2ch.net/test/read.cgi/tech/1030985362/l50
★初心者にVisual C++を教えるスレ★
http://pc3.2ch.net/test/read.cgi/tech/1023530449/l50
/** 関連スレ **/
■ VisualC++(MFC限定)相談室 MFC7.dll■
http://pc2.2ch.net/test/read.cgi/tech/1047949606/l50
Windows Programing for C/C++(Not MFC)
http://pc2.2ch.net/test/read.cgi/tech/1018239290/l50
Win32API 質問箱 Build10
http://pc2.2ch.net/test/read.cgi/tech/1047819779/l50
C++相談室 part17
http://pc2.2ch.net/test/read.cgi/tech/1047560042/l50
/** 外部リンク **/
猫でもわかるプログラミング
http://www.kumei.ne.jp/c_lang/
MSDN ライブラリ
http://www.microsoft.com/japan/msdn/library/
3
名前:
デフォルトの名無しさん
:03/03/27 02:22
以前あるスレで作られた初心者VC++スレ用テンプレ
質問・検索の仕方はここを見れ。
http://www.geocities.co.jp/Beautycare/4965/public/template.html
4
名前:
デフォルトの名無しさん
:03/03/27 04:06
>>1
激しく乙。
5
名前:
デフォルトの名無しさん
:03/03/27 06:16
乙
6
名前:
デフォルトの名無しさん
:03/03/27 19:48
>>1
テンプレにぬるぽが入ってないので NG。
7
名前:
デフォルトの名無しさん
:03/03/27 20:33
NGなのは藻前様の方だ!
( ・∀・) | | ガッ
と ) | |
Y /ノ 人
/ ) < >_∧∩
_/し' //. V`Д´)/ ←
>>6
(_フ彡 /
8
名前:
デフォルトの名無しさん
:03/03/27 20:51
C++初心者です、始めたばかりです、よろしくお願いします。
C言語自体初めてで、質問があります。
PERLの =~ s/hoge/ahya/;
のように文字列を置換するにはどのようにしたらいいんでしょうか?
必要なヘッダファイルと、関数を教えていただけたらありがたいです。
9
名前:
デフォルトの名無しさん
:03/03/27 21:02
そんなもんあるのか?
10
名前:
デフォルトの名無しさん
:03/03/27 21:21
boost::regex かね。
11
名前:
デフォルトの名無しさん
:03/03/27 21:25
>>8
その正規表現ならCStringクラスできるぞ。
CString::Replace("hoge","ahya");
- 完
12
名前:
デフォルトの名無しさん
:03/03/27 21:41
>>11
ありがとうございました......
来年から授業とる予定なのでやっぱVC++買った方がいいかもですね......
13
名前:
デフォルトの名無しさん
:03/03/27 21:51
error C2555: 'LNil::=' : オーバーロードする仮想関数と 'LObject::=' の違いは戻り値の型です。
こんなエラーが出ました。
単純な例では再現することができなかませんでした。
解決策教えてください。お願いします。
http://member.nifty.ne.jp/~masumoto/cpp/vcbug/#SEC1
ここに解説あるんですが意味わからないです・・・
14
名前:
13
:03/03/27 22:00
MSDN
>派生クラスのオーバーライド関数を基本クラスの仮想関数から
>戻り値の型だけ変更して再定義することはできません。
とありますが、戻り値も引数も全く同じなのにこのエラーが発生しました。
15
名前:
13
:03/03/27 22:26
なんとか原因突き止めました。
>とありますが、戻り値も引数も全く同じなのにこのエラーが発生しました。
嘘でした(汗
class LObject
{
private:
public:
LObject(){}
~LObject(){}
virtual void print(std::ostream& a_ost) const;
// ↓コイツのせい
virtual const LBoolean& operator= (const LNil& a_nil);
};
class LNil : public LObject
{
private:
public:
LNil(){}
~LNil(){}
void print(std::ostream& a_ost) const{
a_ost << "nil" << std::endl;
}
// ↓こんなのが暗黙の内に入れられるのかな
// const LNil& operator= (const LNil& a_nil);
};
LNil::operator=は勝手にオーバーライドされてしまうのですね。
LNilではoperator=不要なので、どうにかなりませんかね?
16
名前:
デフォルトの名無しさん
:03/03/27 23:28
>>15
正しくは
LNil& operator= (const LNil& a_nil);
が勝手に作られてるはず。
使わない場合は private メンバで宣言だけしとくのが定石。
ただ、この場合の問題は LObject の定義にある気がする。
operator==() と間違えてるんじゃない?
17
名前:
13
:03/03/27 23:41
>>16
ありがとうございます。
>正しくは
>LNil& operator= (const LNil& a_nil);
ちとボケてました(^^;
>使わない場合は private メンバで宣言だけしとくのが定石。
なるほど。
>ただ、この場合の問題は LObject の定義にある気がする。
確かに・・・
かなり馬鹿な事やって穴に嵌ってしまいました。
別に==と間違えていたわけではありません。(^^;
18
名前:
デフォルトの名無しさん
:03/03/28 08:54
すみません。ド素人すぎてどう質問していいかもよくわかんないんですが
例えば、CDialogを基底にしたクラスの中でSendMessageを使おうとすると
CWndのSendMessage
SendMessage( UINT message, WPARAM wParam = 0, LPARAM lParam = 0 );
が呼ばれるんですよねぇ?
それじゃなくってAPIのSendMessage
SendMessage( HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam );
を呼び出すことってできないんでしょうか?
19
名前:
尚
:03/03/28 09:05
今VCを勉強しています。
私はよくエクセルを使うのですが、
VCでdll作って、それをエクセルから呼び出して使用することをできますか?
可能ならば、どのようにすればいいか、あるいはどのような書籍を読めばよいか
教えていただけませんか。
20
名前:
デフォルトの名無しさん
:03/03/28 09:09
>>18
::SendMessage
じゃ駄目なのか?
21
名前:
18
:03/03/28 09:42
>>20
あ、そうやればいいんですか!
ありがとうございました!('-'*)アリガト♪
22
名前:
デフォルトの名無しさん
:03/03/28 10:32
>>19
COMを勉強すればOK。
23
名前:
デフォルトの名無しさん
:03/03/28 12:01
VC++6.0のスタンダードエディションで作成したソフトはフリーソフトとして公開してもよいですか?
24
名前:
デフォルトの名無しさん
:03/03/28 13:02
よい。
25
名前:
デフォルトの名無しさん
:03/03/28 13:11
VC++.NETはDelphiのようにRAD風ツールになったと聞いたのですが
コンポーネントもつくれますか?
26
名前:
デフォルトの名無しさん
:03/03/28 13:17
>>25
答える前に確認しておきたい。
誰に聞いたの?
27
名前:
デフォルトの名無しさん
:03/03/28 14:24
>>24
調べてみました。MFCがスタティックリンクできないみたいですね。
まあ、使わないからいいけど。
28
名前:
デフォルトの名無しさん
:03/03/28 14:47
>>26
いつもロリ画像をくれる坂田さんです
29
名前:
デフォルトの名無しさん
:03/03/28 15:44
WinXP + VC6で
リンク中...
LINK : fatal error LNK1212: プログラム データベースを開く際のエラーです、ファイルは使用中です
link.exe の実行エラー
といわれたのですが、何が悪いのでしょうか?
どうすれば直りますか?
30
名前:
デフォルトの名無しさん
:03/03/28 17:08
>>26
じゃあその坂田さんとは、
ロリ画像をもらうだけの付き合いにした方が良いよ。
たぶんC#と勘違いしている。
31
名前:
デフォルトの名無しさん
:03/03/28 20:43
>>29
生成するexeファイルが実行中なのでは?
32
名前:
デフォルトの名無しさん
:03/03/28 20:45
>>29
ファイルの排他アクセスに引っかかったんじゃないかな。
VCで使うファイル(ソースや中間ファイルなど)が他で使われているからlink.exeが使えないってことでしょ。
再起動すりゃ直る。
33
名前:
29
:03/03/28 21:36
>>31-32
サンクスです。
>生成するexeファイルが実行中なのでは?
プログラムは終了してます。
>再起動すりゃ直る。
そのとおりでした。この現象はたまにおこるだけなのですが、そのたびに再起動は
めんどくさいです。
34
名前:
デフォルトの名無しさん
:03/03/29 00:51
>>33
XPだとよくある現象。気にせず再起動しる。
35
名前:
デフォルトの名無しさん
:03/03/29 08:18
>>33
2000に変えろ!
36
名前:
デフォルトの名無しさん
:03/03/29 10:00
XP から 2000 にする事をバージョンアップといいます。
37
名前:
デフォルトの名無しさん
:03/03/29 10:38
>>36
周知の事実!
38
名前:
デフォルトの名無しさん
:03/03/29 11:15
プロはバージョナップと言います
39
名前:
デフォルトの名無しさん
:03/03/29 12:30
MAKEINTRESOURCE(i) ですが、
#define MAKEINTRESOURCE(i) (LPTSTR) ((DWORD) ((WORD) (i)))
と定義されています。
RegisterClassExのメニューリソースの指定などで使用する場合、
文字列へのポインタの上位ワードがNULLの場合に、それが
文字列へのポインタではなく、リソースIDだと判断するようなので
すが、通常のポインタは上位ワードがNULLではないと保証
されているのでしょうか?
40
名前:
デフォルトの名無しさん
:03/03/29 20:34
三日ほど前にC言語を勉強し始めた者ですが、
実際に書いたソースを動作させてみたくなりました。
ちなみに参考書として林晴比彦の「改訂 新C言語入門 スーパービギナー編」
を使っていて、半分まで進みました。
VC++.NETが12800円で売っていたんですが、これを買って問題ないでしょうか?
アカデミーパックとは書いてなかった……学生です。
41
名前:
デフォルトの名無しさん
:03/03/29 20:56
>>40
問題はないがまずはフリーのコンパイラでじゅうぶんだろ。
アカデミックならもっと安いけどな。
42
名前:
デフォルトの名無しさん
:03/03/29 21:08
>>41
アカデミック版はフリーのコンパイラよりも安いのか?
43
名前:
デフォルトの名無しさん
:03/03/29 21:34
ただより高いものはない?
44
名前:
デフォルトの名無しさん
:03/03/29 23:33
仰る通り。
45
名前:
デフォルトの名無しさん
:03/03/30 06:30
>40
まずはあなたのOSがNT系列である事を確認する事。95系列には.NETは対応してないからね。
ただ、Cをやるだけなら、別にVC.NETを買う必要はないかと。
LSI-C試食版とかBorlandのとかフリーのはいっぱいあるから、
とりあえずそれで試してみたら?
46
名前:
デフォルトの名無しさん
:03/03/30 08:06
>>45
ネタニマジレス(イカリャク
47
名前:
40
:03/03/30 08:47
遅れました。XPです。
フリーのを使ってみようと思ってBorlandをダウンしたんですが、
インストールがわからず(^^;;;
もうちょっと色々フリーを見てみます。
ありがとうございました。
48
名前:
40
:03/03/30 09:13
あ、違った。後々使うのはXPで、今使っているのは98だ。
てかメモ帳でcfgファイルを作るってのがよくわかりません。
「すべてのファイル」で保存しても何故かtxtの拡張子が付くんですけど。
49
名前:
デフォルトの名無しさん
:03/03/30 09:16
>>48
それはメモ帳のアホ仕様。
Cやるなら、メモ帳じゃなくて、フリーのエディタ使え。
50
名前:
デフォルトの名無しさん
:03/03/30 09:59
caseの次は字下げしたいのに・・・
51
名前:
◆sZMOg20d0E
:03/03/30 10:53
とりあえず、林晴比古についての参考
http://www.pro.or.jp/~fuji/computerbooks/c/index.html
これでも読んでくれ。
漏れも初心者の時 こやつの本買って失敗した。
本のとおりやっても動かんものができたよ。
CG目指してるやつに その本くれてやったが、
そいつからも苦情が漏れに来た。
「本のとおりやっても 動かんぞ ゴラァ!!」ってな。
なんかシリーズ化しているみたいだけど みんな泣き寝入りなのかな?
ちなみにその本は手元にないからどの本かはもう覚えていない。
いっぱいだしてるしな。特定できんよ。
52
名前:
デフォルトの名無しさん
:03/03/30 13:56
なんか最近VC++をやってるとよく飛ぶんだけど。しかもOSごと…
Windows2000+SP3の組み合わせが悪いのか・・・
53
名前:
デフォルトの名無しさん
:03/03/30 13:57
おかしいと思ったらまずmemtest86
54
名前:
デフォルトの名無しさん
:03/03/30 15:02
>>53
正常ですた!
55
名前:
デフォルトの名無しさん
:03/03/30 15:18
>>47
初心者ならVC++の方が設定周りが楽だと思うよ。
VC++.NET Standard って6000円くらいで売ってたと思ったけど違った?
56
名前:
デフォルトの名無しさん
:03/03/30 15:22
そういや、
if ( .... ) {
}
っていうスタイルが一般的だけど、漏れは
if ( ... )
{
}
の方が読みやすくて良いと思った。最初の方は
一見スマートだけど、コードの中にあると、カッコ
の対応が分かりづらくて苦労する。
57
名前:
デフォルトの名無しさん
:03/03/30 15:29
>>56
やめとけ
58
名前:
デフォルトの名無しさん
:03/03/30 15:51
>>56
コーディングスタイル論争やりたいなら他逝けハゲ。
59
名前:
デフォルトの名無しさん
:03/03/30 16:46
ワークスペースウィンドウとか、アウトプットウィンドウとか、
ツールバーとかって、動かないように固定できないのでしょうか。
60
名前:
40
:03/03/30 18:17
Borlandでたぶん設定できました。ありがとうございます。
exeファイルができたんですが、実行してもパッとMSDOSウィンドウが出るだけなんです。
「面積は12.566360です」っていう文章が実行結果として出ると
参考書に書いてあるソースを作ったはずなんですが。。。
>>55
スタンダードがどうか見るのを忘れました。もう少ししたら買おうかな……。
61
名前:
デフォルトの名無しさん
:03/03/30 18:22
VC++.NET standard でインラインアセンブルはできますか?
62
名前:
デフォルトの名無しさん
:03/03/30 19:57
>>60
プログラム終了時にブレークかましとけ。
63
名前:
デフォルトの名無しさん
:03/03/30 21:13
>>60
表示した後に getch() や scanf() で何か入力を求めると一時的に止まるよ。
64
名前:
40
:03/03/30 21:28
>>62-63
う……すいません、どちらも理解不能です。
一瞬しか現れないので入力する間がありません……普通こういうものなんでしょうか?
65
名前:
デフォルトの名無しさん
:03/03/30 21:30
>>64
DOSプロンプトを開いて、そこから実行すればいい。
66
名前:
デフォルトの名無しさん
:03/03/30 21:33
コーディング論争は宗教論争になるからね
スレは盛りあがるけど荒れる可能性もある両刃の剣
素人には(ry
67
名前:
デフォルトの名無しさん
:03/03/30 21:35
>>64
VCからは設定できない。
ココを参考にDOSプロンプトから生成されたexeを直接実行。
ttp://www.denen.org/prog/dos.html
68
名前:
デフォルトの名無しさん
:03/03/30 21:53
DOSプロンプトってみんな未だに16ビットアプリを作ってるのか?
69
名前:
デフォルトの名無しさん
:03/03/30 22:07
ココは初心者スレだぞ。
C/C++の練習で使っていても何も問題あるまい。
70
名前:
40
:03/03/30 22:19
デ…デキタ─wwヘ√レvv~(゚∀゚)─wwヘ√レvv~─ !!!
出来ました! きっちりと「面積は12.566360です」と出た!
おお〜感動〜。一体これに何の意味があるのかわからないけどw
ありがとうございました!
71
名前:
デフォルトの名無しさん
:03/03/30 22:22
>>68
DOSプロンプトなら32ビットアプリだろ
72
名前:
デフォルトの名無しさん
:03/03/30 22:23
>>69
VC++であって某ランドではない罠
73
名前:
デフォルトの名無しさん
:03/03/30 22:30
>>71
それコマンドプロンプト
74
名前:
デフォルトの名無しさん
:03/03/30 23:11
>>70
半径2の円の面積と見た
75
名前:
デフォルトの名無しさん
:03/03/30 23:18
>>73
それNT系
76
名前:
デフォルトの名無しさん
:03/03/31 01:44
私もCの勉強を始めたばかりで
>>40
さんと同じ参考書を使用してます。
その中の「Visual C++を利用してCコンパイラを使う方法」を試しているのですが
プロンプトで「edit smp.1(ファイル名)」を入力すればWindows付属のEDITエディタが起動するはずが
同じ通りにやってるのに認識してくれません。
一体何故なのでしょうか?
ちなみにOSはXPでVisual C++.NETを使用してます。
77
名前:
デフォルトの名無しさん
:03/03/31 02:06
そもそもXPにedit.exeなんかあるのか?
78
名前:
デフォルトの名無しさん
:03/03/31 02:55
>>77
検索したら「EDIT.EXE」ありますた。
79
名前:
デフォルトの名無しさん
:03/03/31 07:04
>>78
気をつけろ!そいつはバ(以下略
80
名前:
デフォルトの名無しさん
:03/03/31 08:12
>>79
バンカーバスター?
81
名前:
デフォルトの名無しさん
:03/03/31 10:16
>>76
メモ帖でやれば?
editの代わりにnotepadで。
82
名前:
デフォルトの名無しさん
:03/03/31 11:44
☆ チン マチクタビレタ〜
マチクタビレタ〜
☆ チン 〃 ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヽ ___\(\・∀・) < ServicePack6まだ〜?
\_/⊂ ⊂_ ) \_____________
/ ̄ ̄ ̄ ̄ ̄ ̄ /|
| ̄ ̄ ̄ ̄ ̄ ̄ ̄| |
| たけのこの里 |/
83
名前:
デフォルトの名無しさん
:03/03/31 13:01
>>82
禿しく同意!
84
名前:
名前は開発中のものです
:03/03/31 16:00
Cの基本はわかるんで、そろそろC++やってみようと思うんですけど
早いですか?それと習得(あいまいな言い方ですみません)には、どのくらい
時間かかりますか?
85
名前:
デフォルトの名無しさん
:03/03/31 16:08
ももくり3年かき8年
86
名前:
あほ
:03/03/31 16:09
http://www.asahi-net.or.jp/~yf8k-kbys/
↑ここで勉強すべし。
87
名前:
デフォルトの名無しさん
:03/03/31 16:14
>>84
決まりなんて無いんだからやる気があるなら今すぐやれ。
88
名前:
デフォルトの名無しさん
:03/03/31 16:20
>>84
84さん次第。構造体,malloc,freeを使いこなせるのであれば
同様にclass,new,deleteを使いこなせるように進めれば。
もちろんそれだけではないけど。
89
名前:
デフォルトの名無しさん
:03/03/31 16:22
ネットワークプログラムを組もうと思い
参考になりそうなサイトを色々と探しましたが
もし皆さんが参考になったサイトがあったら
教えてください。
90
名前:
名前は開発中のものです
:03/03/31 16:25
みなさんお返事ありがとうございます。86さんのリンクページ読んだら、Cに慣れすぎて
しまうと、オブジェクト指向で挫折する人が多いと書いてあったの
ので、Cに慣れすぎてしまう前に移行しようと思います
91
名前:
デフォルトの名無しさん
:03/03/31 16:30
★みんなの情報局★みんなのリンク集★ココ最高★
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
http://www.pink-angel.jp/betu/linkvp2/linkvp.html
92
名前:
89
:03/03/31 16:33
やはりインターネット上のデータより
書籍のほうが勝ってるのでしょうか?
93
名前:
デフォルトの名無しさん
:03/03/31 16:37
どっちもどっち
両方活用すれ
94
名前:
デフォルトの名無しさん
:03/03/31 16:40
>>89
ネットワークプログラミング相談室 Port5
http://pc2.2ch.net/test/read.cgi/tech/1040220302/l50
95
名前:
VC初日
:03/03/31 17:24
今日から仕事の都合でVCを使い始めた初心者です。
質問がありカキコしました。
他のエディタでEUCの文字コードで作成したソースファイルを、
VCで開くと文字化けしてしまうのですが、どうすれば改善するのでしょうか?
どこかに開くファイルは必ずEUCの文字形式で開くような設定はあるのでしょうか?
どなたかご存じでした教えて下さい。
よろしくお願い致します。
96
名前:
デフォルトの名無しさん
:03/03/31 17:36
外部ツールで変換すれば?
http://computers.yahoo.co.jp/download/vector/win/util/text/conv/code/
97
名前:
95
:03/03/31 17:47
>>96
やっぱりシフトJIS等に一度変換しないとダメなのでしょうか?
納品でEUC形式で行うように統一しているので、
VC上でソースを編集する時もEUC形式で表示されたものを編集したいです。
どうしても無理であれば仕方ない事なのですがね。
98
名前:
デフォルトの名無しさん
:03/03/31 17:51
>>97
ムリ
99
名前:
95と97
:03/03/31 18:11
了解しました。
仕方が無いので、EUC形式が正しく表示出来る違うエディタで編集して、
編集が終わったらVCでコンパイルする事にします。
質問に答えて頂きありがとうございました。
100
名前:
89
:03/03/31 20:05
>>94
おぉ。いいスレですね。
ありがとうございます。
101
名前:
デフォルトの名無しさん
:03/03/31 23:15
vc++.net でcursesライブラリを使うにはどうするんでしょうか?
102
名前:
デフォルトの名無しさん
:03/04/01 00:10
なんだかCの参考書って難しくてさっぱりです。
この意味わかる方教えてください
某参考書の一節
#ifがよく使われるのは、ヘッダファイルの二重include防止です。
#if ANYHEADER_H
#define ANYHEADER_H
・
・
・
#endif
103
名前:
デフォルトの名無しさん
:03/04/01 00:17
何が分からないのか分からん
104
名前:
デフォルトの名無しさん
:03/04/01 00:18
と思ったがそれじゃまともに動かないじゃん
105
名前:
デフォルトの名無しさん
:03/04/01 00:20
>>102
気持ちはわかる。以上
106
名前:
デフォルトの名無しさん
:03/04/01 00:21
構文の例みたいなもんなんですが、二重includeって
なんですか?
107
名前:
デフォルトの名無しさん
:03/04/01 00:26
二重includeとはなんですか?
108
名前:
デフォルトの名無しさん
:03/04/01 00:31
#if ANYHEADER_H じゃなくて
#ifndef ANYHEADER_H じゃね。
109
名前:
デフォルトの名無しさん
:03/04/01 00:33
二重にincludeすることです
110
名前:
デフォルトの名無しさん
:03/04/01 00:34
>108
そうでした。108さんの言うとおり。
すみません、そちらの方でお願いします
111
名前:
デフォルトの名無しさん
:03/04/01 00:34
現代人は #pragma once を使います。
112
名前:
デフォルトの名無しさん
:03/04/01 00:36
>>111
両方使うのが普通です
113
名前:
デフォルトの名無しさん
:03/04/01 00:37
どこで二重にincludeしてるかよくわかんないんです。
低レベルな話だと思いますがよろしくお願いします
114
名前:
デフォルトの名無しさん
:03/04/01 00:39
>>113
気持ちはすごくわかる。以上
115
名前:
デフォルトの名無しさん
:03/04/01 00:48
vc++.net でcursesライブラリを使うにはどうするんでしょうか?
116
名前:
デフォルトの名無しさん
:03/04/01 00:49
>>113
ここを見ればわかるかも
ttp://www.02.246.ne.jp/~torutk/cxx/file/includeguard.html
117
名前:
デフォルトの名無しさん
:03/04/01 00:56
釣られてあげよう。でも、この後のレスはないので念のため。
ひとつのファイルをコンパイルするのに
同じファイルを何回もインクルードするのは無駄。
だから、コンパイラが読み込みを省略してくれることもあるし、
万が一、2度読み込まれても構文解析が読み飛ばしてくれるように、
#ifndef ANYHEADER_H
#define ANYHEADER_H
・
・
・
#endif
と書いておく。
stdio.hみたいなファイルは、
ありとあらゆるヘッダーにかかれているから、
コンパイル時間の節約になるし、
同じ宣言が重複するエラーも出ない。
さらばじゃ。
118
名前:
デフォルトの名無しさん
:03/04/01 01:02
http://www.agemasukudasai.com/bloom/
119
名前:
デフォルトの名無しさん
:03/04/01 01:04
>どこで二重にincludeしてるかよくわかんないんです。
いいところに気がついたじゃないか。
プログラマのほとんどは、どこで二重にincludeしてしまうのか
わかってないんだよ。だけど、その呪文を書いておけば、
どこで二重にincludeしてしまっても気にする必要がないんだよ。
どーだ楽ちんだろ。
120
名前:
デフォルトの名無しさん
:03/04/01 03:46
#ifndef ANYHEADER_H
#define ANYHEADER_H
#pragma once
・
・
・
#endif
まぁあれだ
『おまじない』だと思ってこれは必ず入れて置けと
121
名前:
デフォルトの名無しさん
:03/04/01 07:53
つーか
>>102
は釣りだろ!
122
名前:
デフォルトの名無しさん
:03/04/01 13:37
>>101
エスケープシーケンスでがんばったら。
123
名前:
デフォルトの名無しさん
:03/04/01 13:43
>>122
VC++.NETが使えるのは2000/XP→2000/XPではエスケープシーケンス無理
→がんばれない。
124
名前:
デフォルトの名無しさん
:03/04/02 09:17
VC++.NET 使ってる人にお尋ねしますが、これにも
MSDN Library が付属してると思うんですが、これの
Platform SDKの解説は相変わらず大部分英語ですか?
それとも完全に日本語訳になったでしょうか?
VC++6.0使ってるんですが、翻訳がホントに一部だけで
WNDCLASS構造体の解説ですら英語という状況なので
完全に訳されているなら.NETに移行しようかと思ってる
んですが。
125
名前:
デフォルトの名無しさん
:03/04/02 09:42
COleVariant オブジェクトにCHAR型の文字ををセットするのには
どうすればよいのでしょうか?
126
名前:
bloom
:03/04/02 10:01
http://www.agemasukudasai.com/bloom/
127
名前:
デフォルトの名無しさん
:03/04/02 12:26
>>125
char c;
COleVariant v(CString(c));
128
名前:
デフォルトの名無しさん
:03/04/02 14:08
>>124
英語を学んだほうが現実的だと思うけど。
ネット版なら翻訳されてるかな?
ttp://www.microsoft.com/japan/msdn/library/
129
名前:
デフォルトの名無しさん
:03/04/02 15:06
ヘルプの英文に英語の知識はほとんどいらない
130
名前:
デフォルトの名無しさん
:03/04/02 15:10
#include <stdio.h>
int main()
{
int a, b;
printf("a, bを入力してください\n");
scanf("%d, %d", &a, &b);
printf("a = %d b = %d\n", a, b);
printf("何かキーを押してください");
getchar();
printf("end");
return 0;
}
実行するとgetchar()の入力待ちが起きずに終了してしまうんですが
なぜでしょうか。コンパイラはvc++.netです。
131
名前:
デフォルトの名無しさん
:03/04/02 15:28
scanfでデータを取りこぼしているから
132
名前:
デフォルトの名無しさん
:03/04/02 23:22
<<127
ありがとうございます。
133
名前:
デフォルトの名無しさん
:03/04/02 23:49
VC++.NETを使ってますが、先日までは自分が記述したプログラムだけ
ステップインしてデバッグ出来ていたのですが、先ほどやってみると
strcpy,strncpy,starcat,CString等他の関数の中身(アセンブリ?)
までステップインしてしまってます。
きっとどこかの設定を触ってしまいこうなったのだと思いオプション
設定を見直したのですが、わかりませんでした。
教えてください。
134
名前:
デフォルトの名無しさん
:03/04/03 06:22
>>133
ステップアウト (関数から抜け出る)
ステップオーバー (次の関数へ)
のボタンないですか?
135
名前:
デフォルトの名無しさん
:03/04/03 09:28
<<134
ありがとうございました!
ステップアウトでできました。以前はF8ステップインだけを押して
いてそんな事してなかったと思ったのですが。。
これでデバッグがまたはかどります。
ステップインって必要ないじゃん!
136
名前:
デフォルトの名無しさん
:03/04/03 09:35
>>135
んなこたーない。
自分の書いた関数の呼び出しもトレースしなくなるぞ。
137
名前:
デフォルトの名無しさん
:03/04/03 11:48
本に載ってたソースを元にファイル出力をしてみようと
↓のコードを書いたのですが
if(GetAsyncKeyState(VK_TAB) & 0x8000) {
HANDLE hmap;
char *map;
PDWORD bite=0;
map=(char *)bData;
hmap =CreateFile("C:\\map.txt",GENERIC_READ|GENERIC_WRITE,0,NULL,CREATE_ALWAYS,NULL,NULL);
if(hmap != INVALID_HANDLE_VALUE){
WriteFile(hmap,map,lstrlen(map),bite,NULL);
CloseHandle(hmap);
}
}
WriteFileができず
「ハンドルされていない例外 は Sample11.exe (KERNEL32.DLL) にあります: 0xC0000005: Access Violation。」
とでてしまいます。
どうすれば書き込むことができるのでしょうか?
138
名前:
137
:03/04/03 12:01
VC++6.0
を使ってます
139
名前:
デフォルトの名無しさん
:03/04/03 12:37
>>137
>PDWORD bite=0;
これはないでしょう。
140
名前:
137
:03/04/03 12:50
「第四引数は実際に書き込まれたBITE数が代入されるだけ」
と書いてあったので適当に初期化してみたのですが
まずかったでしょうか。
どう直せばよいのでしょう。
141
名前:
デフォルトの名無しさん
:03/04/03 13:00
つまりアドレス0に代入されていることになるが・・・
142
名前:
デフォルトの名無しさん
:03/04/03 13:13
Σ(゚Д゚
PDWORDなんてものがあるなんて知らなかった…。
143
名前:
137
:03/04/03 13:14
mallocなどでメモリ領域を確保してそのアドレスを入れればよいのでしょうか?
144
名前:
デフォルトの名無しさん
:03/04/03 13:18
あるある、俺も以前間違えた。
MSDNにも素直にFoo(HOGE* hoge);って書いてくれればいいのに
Foo(LPHOGE hoge);って出てたりするし。
145
名前:
デフォルトの名無しさん
:03/04/03 13:20
>>143
答えから言えば
DWORD dwBit;
としといて関数に&dwBitを渡す。
たぶんMSDNにも「第四引数は〜へのポインタ」みたいなこと書いてあると思う。
146
名前:
137
:03/04/03 13:35
ありがとうございます。
やってみます。
147
名前:
137
:03/04/03 13:46
できました。
Pはポインタを示す冠詞のようなものなのですね。
初めてしりました。
148
名前:
デフォルトの名無しさん
:03/04/03 13:56
LPとP両方定義されている物、
片方しか定義されていない物、
まったく存在しない物、
16bit時代の名残を引きずっているとはいえ、
M$の定義はいい加減すぎる
149
名前:
デフォルトの名無しさん
:03/04/03 15:27
>>148
その癖型チェックはしっかりするし(w
150
名前:
デフォルトの名無しさん
:03/04/03 19:13
すいません。
Directxを使ってクライアント領域に描写しているのですが
ダイアログのようなエディットボックスで
文字入力したいのです。
どのようにすればよいでしょうか。
151
名前:
デフォルトの名無しさん
:03/04/03 20:12
VCでC++じゃなくてCをコンパイルするのて、
簡単に出来るんですか?
152
名前:
デフォルトの名無しさん
:03/04/03 20:15
>>151
ソースの拡張子を .c にする。
153
名前:
デフォルトの名無しさん
:03/04/03 20:39
ありがとうございます。
助かりました。
154
名前:
デフォルトの名無しさん
:03/04/03 21:05
ダイアログウィンドウって子ウィンドウ作れますか?
155
名前:
150
:03/04/03 22:23
解決しました
156
名前:
デフォルトの名無しさん
:03/04/04 01:58
>>154
作れます。
157
名前:
デフォルトの名無しさん
:03/04/04 08:18
>>156
つーか子ウィンドウの作れないウィンドウってあるか?
158
名前:
デフォルトの名無しさん
:03/04/04 10:33
VRAMの表示バンク切り替えやクリッピング無しの描画によって見えなくなることはある
いくらでも対策はあるけど
159
名前:
デフォルトの名無しさん
:03/04/04 17:11
VC++6.0をWin2kProで使用でのことについて質問です。
以前まで(今回の再インストール)は、VCの「ファイル、編集・・」などある
あのメニューから、ツールバーのカスタマイズをするときに引用できたのですが、
なぜかできなくなりました、ためしに完全インストールや上書きインストールなど
やってみましたが無理でした。
やりたいことは、
ツール→カスタマイズで、ファイル→ワークスペースを開く を
ツールバーに追加したいのですが、このメニューが何か違うのです、左端につまみ
がないメニューに(表現悪くてすいません)なっていて、
編集メニュー項目とかにアイコン付で項目があると思うのですが全ての項目に
アイコンがついてません、アイコンが描画される幅がない感じで狭いです。
友人から試しに上述のカスタム状態のレジストリをもらって上書きすると、一応
できたのですが、メニュー項目のアイコンなどは復帰しないです。
どなたかご教授下さい、わかりにくければ再度説明します。お願いします。
160
名前:
デフォルトの名無しさん
:03/04/04 18:59
>>159
わかりにくいのでもう一度お願いします。
161
名前:
デフォルトの名無しさん
:03/04/04 19:00
>>159
>ツール→カスタマイズで、ファイル→ワークスペースを開く を
>ツールバーに追加したいのですが
そんなに何度も使うものじゃないのにツールバーに必要ですか?
162
名前:
デフォルトの名無しさん
:03/04/04 19:01
>>159
>引用できたのですが
この辺が謎。
163
名前:
159
:03/04/04 19:27
>>161
私は結構つかうので…。まぁなくても不便とまではいかないかも
しれませんが、できなくなったのが一番嫌なことでしょうか。
>>162
えっと、ツール→カスタマイズ、でツールバーに
ファイル→ワークスペースを開く をD&Dしたら、ツールバーに
同じ機能のボタンが生成できるんですが、その機能ができなく
なったのです。
カスタマイズ設定時でのメニューの項目が全てグレーになって
しまっています。
そのほかの見える現象としては、メニューがWin95時代(?)の
感じみたいになっていて、IE5とかのように左の端につまみがなく
なっています。
IEですとお気に入りのなかの項目にアイコンがあると思います。
プログラムだとオーナードローする技法のやつです。
VC6.0のメニューもそういった感じだったはずが、上述のとおり
Win95チックになってしまっています。
画面をみてもらえばいいのですが、そういうわけにも
いかないですね。
文字で表現するのが難しい、どうか宜しくお願いします。
164
名前:
デフォルトの名無しさん
:03/04/04 19:37
>>159
>今回の再インストール
これが謎だけど、単にIEのバージョンが古いというのではあるまいな?
165
名前:
159
:03/04/04 21:09
>>164
IEは5.5SP2です、正確には今回のWindows2000Proインストール
以来ずっとこの現象が残っているのです。
あれはIEコンポーネント関連と考えてIE6にしたり(今はけしました)
しても無理でした、VCの再インストールも無理でしたし。
以前まではWinインスト後まっさきにVCインストールでも、
正常になっていました、Winまた再インストールすればよい気も
するんですがこれだけの為にするのにも手間がかかるから敬遠してます。
どこか自由に画像アップロードできるところがあればいいのですが、
検索の仕方が悪いのかいまいちでてこない…。
他何か足りない情報ありますでしょうか?
今ちょっと思いついたのでレジストリを完全削除してVC起動してみます…。
(これでうまくいかないかなぁ)
166
名前:
デフォルトの名無しさん
:03/04/04 21:20
レジストリを完全削除したらOSが起動不能になるが
167
名前:
159
:03/04/04 21:26
>>166
あ、もちろんVcのです、やってみましたが無理でした。
猫のところで画像があったので説明します。
ttp://www.kumei.ne.jp/c_lang/setvc.htm
ここにページにある画像の「||ファイル|編集・・・」や
プロジェクト→プロジェクト追加→[アイコン]ファイル
となってますが、これの
メニューは、ちょうどメモ帳のメニューのようになって一番左のCのアイコン無し
メニューポップアップはアイコンが一切ないです。
これでもっと分かりやすくなったでしょうか…。
168
名前:
デフォルトの名無しさん
:03/04/05 02:41
(´-`).。oO(あきらめてくれよ頼むから)
169
名前:
159
:03/04/05 04:39
うーん、2chにすら同じ症状でた人いないみたいですねぇ。
それともあほすぎる質問なのかな。
まぁ開発には直接影響ないので
>>168
さんの言う通り
諦めることにします。
再三の書き込み失礼致しました。
170
名前:
デフォルトの名無しさん
:03/04/05 08:54
自分のスキルアップに繋がる質問なら
モチベーションあがるんだけどね〜。
171
名前:
デフォルトの名無しさん
:03/04/05 18:06
>>170
スレタイがスレタイだけにそりゃ難しいだろ。
172
名前:
デフォルトの名無しさん
:03/04/05 19:14
>>159
ツール -> オプション -> ワークスペース -> 画面読み取り互換メニューを使用
ぢゃないか?
173
名前:
:03/04/05 22:12
AfxRegisterWndClass ( NULL, AfxGetApp ()->LoadStandardCursor ( IDC_ARROW )
って関数があったんだけどAfxGetApp()->の文法で関数の後にアロー演算子って
どんな意味があったっけ、一度みたような気がしたんだけど
調べるキーワードおせーてください
174
名前:
デフォルトの名無しさん
:03/04/05 22:20
>>173
「アロー演算子」で調べるといいよ。
175
名前:
デフォルトの名無しさん
:03/04/05 22:51
条件が関数の後だと思っている辺り、Cの基礎をやり直した方がいいと思われる
176
名前:
デフォルトの名無しさん
:03/04/05 22:57
条件がCだと思っている辺り、C++の基礎をやり直した方がいいと思われる
177
名前:
173
:03/04/05 23:00
ネットと参考書ひらけたが構造体とオブジェクトでの
文法しかのってない、もう少しヒントを、、、
178
名前:
デフォルトの名無しさん
:03/04/05 23:03
C言語でも可能な記述。ただしアローの先が関数ってのは有り得ないけど
構造体のポインタを返す関数に対して使える。
よって175の指摘どおりCの基礎をやり直すべき。
179
名前:
デフォルトの名無しさん
:03/04/05 23:07
>アローの先が関数ってのは有り得ないけど
ん?
typedef struct
{ HRESULT (*LoadStandardCursor)(int); } func_struct;
func_struct *AfxGetApp();
AfxGetApp()->LoadStandardCursor( IDC_ARROW);
180
名前:
173
:03/04/05 23:09
あ、なるほど。
そのままだったね
基礎たりないね
>アローの先が関数ってのは有り得ないけど
これはありえると思うんだけど、てかメソッドか?
181
名前:
デフォルトの名無しさん
:03/04/05 23:15
構造体内の関数ってC言語の規格だっけ?
細かい所はぐちゃぐちゃなのでスマソ...
182
名前:
デフォルトの名無しさん
:03/04/05 23:17
失礼良く見てなかった。
関数ポインタね。さらにスマソ...
183
名前:
173
:03/04/05 23:30
>構造体のポインタを返す関数に対して使える。
ということでいいですね
動作テストははぶいちゃいます
184
名前:
173
:03/04/05 23:37
軽いプログラムをつくっているのですが
1 API
2 MFC
3 ウィザード
この内どれで作るかまよってます
モノはアナログ時計でリージョン使おうと思ってます
ウィザードが安定してそうなんですが、ウィンドウを
作る前にオーバーライドするのってどうしてます?
185
名前:
デフォルトの名無しさん
:03/04/05 23:48
>>173
( ゚д゚) <ポカーン…
186
名前:
デフォルトの名無しさん
:03/04/05 23:54
>>184
手軽に作るならMFCが楽ぢゃない?
ウィザードってよく分からんが。
187
名前:
173
:03/04/05 23:54
申し訳ない、、
全力で説明してるんだが、なんとか読み取ってくれないかの〜
ウィザードつかったときにもうすでにフレームとユーザビュー
が完成されてるんで、なんとかリージョンをかますことができんか
考えてます、、、
188
名前:
デフォルトの名無しさん
:03/04/05 23:56
すんませんがリージョンってなんですか?
189
名前:
173
:03/04/05 23:57
>>184
MFCはMFCウィザード使わないでという意味です
ウィザードはMFCウィザードを使うという意味です
MFCのみだとCWndクラスをそのまま継承してリージョンが
できるが手作りだと不安定なきがしました、メッセージ関係とか特に
190
名前:
デフォルトの名無しさん
:03/04/05 23:57
>>187
SDIで作成すると白い背景のウインドウ
1つだけじゃない? そこにごちゃごちゃ
追加していけばいいのでは?
191
名前:
デフォルトの名無しさん
:03/04/05 23:59
昔のEmi Clock みたいなの作りたいのかな?
丸いウインドウ。
192
名前:
173
:03/04/06 00:00
>>188
リージョンはウィンドウのスタイルを自由な形で利用する意味で
書きました^^;
普通だとダイアログかSDIの矩形なので面白くないと思って、、
で、今回は時計なので楕円です
193
名前:
デフォルトの名無しさん
:03/04/06 00:03
>>192
漏れもそういうのは作り方わかんないから、他の人の
アドバイスきぼんぬ。
194
名前:
173
:03/04/06 00:05
>>190
SDIにごちゃごちゃ書くときに
ウィンドウの形を変えるには
ViewのPreCreateWindowメソッドに書いたらええですか?
Frameはほっといたらいいよね?
>>191
そう
195
名前:
デフォルトの名無しさん
:03/04/06 00:10
ttp://techtips.belution.com/ja/vc/0007/
検索したらすぐ出てきたぞ。
196
名前:
173
:03/04/06 00:18
>>194
なるほど、こりゃええわ
でも、APIやな
MFCウィザードやったらFrameクラスいじったらええみたいや
なんとかできそうや、ほな
197
名前:
デフォルトの名無しさん
:03/04/06 00:29
>>188
DVDで使われている地域コードのこと。
198
名前:
デフォルトの名無しさん
:03/04/06 00:34
あるCSVファイルを読み込んで、
中にある値を2倍して
新しいCSVファイルに出力
するプログラムを作りたいのですが、
現在難航しています。
そこで質問なのですが、
CSVファイルのデータは全て
文字列データ型なのでしょうか?
atof()関数で文字列を数値型に変換しようと
ソースに記述するとシンタックスエラーとか
言われます。
このあたりで何かヒントがあればお願いします。
199
名前:
デフォルトの名無しさん
:03/04/06 00:42
>>198
>CSVファイルのデータは全て
>文字列データ型なのでしょうか?
CSVファイルのデータは全て
文字列データ型なのでしょうか?
200
名前:
デフォルトの名無しさん
:03/04/06 00:44
>>198
シンタックスエラーが出ている時点で
CSVファイルの構造がどんなものであろうがそれ以前の問題
201
名前:
デフォルトの名無しさん
:03/04/06 00:53
>>198
エクセルかなんかで吐いたデータだろうが、
数値型で入れてくださいと言っても、入れてくれるとは限らんぞ。
文字列で受け取って、その後数値かどうか判定してからatof()しないと。。。
202
名前:
198
:03/04/06 01:07
レスありがとうございます。
現在の状況としてはおおよそ↓のように
なっているのですが、なにか突っ込むところが
あればお願いします。
(突込みどころ満載かもしれませんが、ネタじゃないです)
ch→char型変数
ddt,ddr→double型変数
if(isdigit(ch)==false){ /* 入力文字が数値以外のものだったら実行 */
fout.put(ch);
}
else if /* 文字列を数値に変換、×2演算 */
ddt=atof(ch); /*ここでシンタックスエラー*/
ddr=ddt*2;
fout.put(ddr);
203
名前:
デフォルトの名無しさん
:03/04/06 01:18
>>202
文字列と文字を同じ扱いしてないか?
204
名前:
198
:03/04/06 01:24
たしかに言われてみれば考えていなかったです。
っつーことはchを
char ch[80];
にしたらよいのでしょうか?
試しにやってみると
エラーが2行出てしまいました。
「引数を 'char [300]' から 'char &' に変換できません。」
て言われます。
どこが悪いのでしょうか?
getlineとか使うんですかね?
とりあえずやってみます。
205
名前:
デフォルトの名無しさん
:03/04/06 01:26
>>202
普通は、
if(sscanf(str, "%f", &ddr) == 1){
fout.printf("%f", 2*ddr);
} else {
fout.printf("%s", str);
}
こんな感じになるんじゃないか?
206
名前:
デフォルトの名無しさん
:03/04/06 01:32
>>202
がネタにしか思えない奴の数→(1)
207
名前:
デフォルトの名無しさん
:03/04/06 01:38
>>202
は、CSVファイルをちゃんとParse出来ているんだろうな。。。?
まさか、一行一フィールドとして処理してないだろうな。。。
208
名前:
ひよこ名無しさん
:03/04/06 09:33
最近 Visual C++ に手を出した元 Visual Basic ユーザーです。
そこで質問なんですが、
Visual C++ のコントロール(フォームベースのやつ)と VB のコントロールって
つまりは何が違うんですか。扱う上で。
お絵かきソフトっぽくしようとしてピクチャ貼り付けたらどうも上手くいかない・・・。
VB だったらピクチャーコントロール貼り付けて MOUSEMOVE にコード書けば
OKなんですが。。。
うーん。なんかよくわかりません。
209
名前:
デフォルトの名無しさん
:03/04/06 11:19
VBライクに組みたいなら、Builderの方がいいかもね。
210
名前:
208
:03/04/06 11:27
あのう、VCで VBのピクチャコントロールに相当するものって
ピクチャってやつですよね?
あそこに MouseMove の処理を書きたいときってどうすればいいんですか?
211
名前:
デフォルトの名無しさん
:03/04/06 11:30
VBで〜したのをVCではどうすれば良いって聞くよりは、VCで〜をしたいと書いた方がいいと思うが。
212
名前:
デフォルトの名無しさん
:03/04/06 12:25
うむ。ピクチャコントロールとか言われても何のことか
わからん。
213
名前:
デフォルトの名無しさん
:03/04/06 12:37
俺はピクチャと言われてもピンとこん。
214
名前:
デフォルトの名無しさん
:03/04/06 13:11
VBのピクチャコントロールとは
PictureBox のことと見た。
215
名前:
デフォルトの名無しさん
:03/04/06 14:39
BMP画像を貼りつけて、その上にマウスカーソルが
あるかどうかを感知したいんですかね?
216
名前:
デフォルトの名無しさん
:03/04/06 16:53
>>215
単純にグラフィックしたいだけかも知れんぞ。
それなら、そのままFormに描けばいい。
あと、Messageについて勉強することだな。
217
名前:
デフォルトの名無しさん
:03/04/07 01:27
>>184-189
まだ読んでるかな?
VC++のウィザードってのは、あれはたんっっっっなる
ソースコード生成ツールだからその点よろしく。
でもMFCを使うならウィザードが作るコードを骨組みに
するのがお勧め。
218
名前:
デフォルトの名無しさん
:03/04/07 01:52
>>184
3はギャグだよな?
219
名前:
208
:03/04/08 00:41
>>216
そうです。その通りです。
Form に描画の処理書く方法もあるんですが、ピクチャボックスっぽい外観を
付けたい場合はどうすればいいんでしょう?
(左半分に描画域、右半分にボタン類を付けたい)
CView クラスをそのまま継承すれば描画処理は簡単に作れると思いますけど、
どうしてもフォームベースで作ってみたいんです。
220
名前:
デフォルトの名無しさん
:03/04/08 07:38
スレ違いのような気もするのですが…教えてください。
VC++でフリーソフト作って公開するに当たって、
中には「動作環境」を記載しているサイトもありますが
あれはロウスペックのPCに入れて動くか動かないかを
徐々に試していくしか方法はないのでしょうか?
それともPCの動作を制限し、その上でexeファイルを動かせるような
ソフトがあるのでしょうか?
221
名前:
デフォルトの名無しさん
:03/04/08 10:42
>>219
Staticか、使ったこと無いけどPictureコントロールを貼り付けて
右クリックでプロパティー出してスタイル変更。
設定できないスタイルや背景色はは、別途プログラムで変更できる。
ttp://www.kumei.ne.jp/c_lang/
も参考にするべし。
222
名前:
デフォルトの名無しさん
:03/04/08 13:35
ウインアプリでウインドウを作る時に
myProg.hbrBackground=GetStockObject(WHITE_BRUSH);//背景
の所に
error C2440: '=' : 'void *' から 'struct HBRUSH__ *' に変換することはできません。
と言うエラーが出るのですが、解決方法を教えてください。
223
名前:
デフォルトの名無しさん
:03/04/08 13:45
myProg.hbrBackground= (HBRUSH)GetStockObject(WHITE_BRUSH);//背景
224
名前:
デフォルトの名無しさん
:03/04/08 14:51
>>222
これは良く出るエラーだな。型をしっかり指定すればOK!
225
名前:
デフォルトの名無しさん
:03/04/08 14:57
>>220
「CPU:最低400MHz」とかいうの?
ゲームとかでヨッポドタイムクリティカルなものでもなければ、意外と適当と思われ。
自分のPCで、クロックダウンして動かしてみるとか(w
226
名前:
デフォルトの名無しさん
:03/04/08 15:50
今まで、ボーランドのフリーの使ってましたが、ここを読んで、勢いあまってVC++.NET購入したんですけど、使い方が全然分からないです。
とりあえずプログラム動かしたいんですけど、どうすればいいんすか?
誰か丁寧に教えてくだしい。
227
名前:
aaa
:03/04/08 16:21
http://www5b.biglobe.ne.jp/~ryo-kyo/osu.html
http://my.vector.co.jp/servlet/System.FileDownload/download/ftp/0/279026/pack/win95/game/table/pachinko/sikisai.lzh
228
名前:
デフォルトの名無しさん
:03/04/08 16:37
>>226
「Windowsプログラミングの基礎知識」 柏原 (ascii)
おすすめ。
229
名前:
デフォルトの名無しさん
:03/04/08 16:53
>>225
クロックダウン…なるほど…
危険そうな言葉ですが頭には入れておきます。
どうもありがとう!
230
名前:
デフォルトの名無しさん
:03/04/08 18:14
COM コンポーネント作ってみたんですけど、全体的に作り直したいんで、
全部削除して最初からやり直したいんです。
COM って作った時点でレジストリに登録されますよね?
ですから、作業フォルダだけ消したら問題が生じると思うんですが。。。
レジストリから削除するにはどうすればいいんですか?
231
名前:
デフォルトの名無しさん
:03/04/08 18:19
regeditで削除すりゃいいじゃん。
232
名前:
デフォルトの名無しさん
:03/04/08 18:22
Windows2000で、通常使用するプリンタを任意に
切り替えるプログラムを作成したいのですが…。
SetPrinterが失敗してしまって、切り替えることができません。
なにか方法はありますでしょうか?
233
名前:
デフォルトの名無しさん
:03/04/08 18:33
>>220
=229
最低限のクロック周波数なんてみんな結構いい加減だよ。
「責任逃れ」な値を書いておけば大丈夫(笑)
それよりもプラットフォーム(98/Me/NT4.0 等)の心配したほうがよろし。
234
名前:
bloom
:03/04/08 18:36
http://www2.leverage.jp/start/
235
名前:
デフォルトの名無しさん
:03/04/08 19:33
>>233
あれって、手持ちにあるPCの中でも低スペックのもので動作させて、
満足行くような処理が出来たらそれが最低環境っていう風に決めてんじゃないの?
236
名前:
デフォルトの名無しさん
:03/04/08 20:09
超初心者は何やったらいいんだろう・・・
とりあえず箱を抱いて寝ています。
237
名前:
デフォルトの名無しさん
:03/04/08 20:11
デバッグ実行後メモリリーク(解放忘れ)があった場合、
そのことがアウトプットに表示されるようにするには
どうすればいいのでしょうか?
知人が表示させているのを見たことがあるのですが、
どこで設定すればそうなるのかわかりません。
238
名前:
デフォルトの名無しさん
:03/04/08 20:33
>>237
デバッグ環境だと普通に表示されると思うが。。。
239
名前:
237
:03/04/08 21:02
>>238
それが、WinMainで
char *p = new char[ 100 ];
を実行して、そのままdeleteせずに
終了しても何も表示されません。
ひょっとして、何かincludeしなければ
いけないとかいうことなのでしょうか?
240
名前:
デフォルトの名無しさん
:03/04/08 21:19
>>239
単にデバッグ版を実行してるだけじゃなくて?
241
名前:
デフォルトの名無しさん
:03/04/08 21:36
>>239
非MFC環境の場合であれば
#include <crtdbg.h>
_CrtSetDbgFlag()
これらに関連する関数等を調べていけば、
何かわかってくるかと。
242
名前:
デフォルトの名無しさん
:03/04/08 21:42
俺の場合はAfxBiginThreadで起動したスレッドの先頭でCString msg;として
その中でmsg.Format云々を使ったりするとメモリリークになるんですが。
243
名前:
237
:03/04/08 22:32
>>241
その関数を実行することで
リークが表示されるようになりました。
ありがとうございます。
244
名前:
222
:03/04/09 02:28
>>223-224
できました。ありがとうございました。
245
名前:
デフォルトの名無しさん
:03/04/09 02:40
>>242
TerminateThread使ってない?
246
名前:
デフォルトの名無しさん
:03/04/09 03:27
ハンドルをグローバル変数にするのはだめですか?1回1回引数で渡すより
早いような気がして。後々問題とか出てきそうですけど。
247
名前:
かおりん祭り
:03/04/09 03:30
http://www.saitama.gasuki.com/kaorin/
〜oノノハヽo〜
( ^▽^)/⌒\ , −-
((ニ[二=( こんなのがございま−−==≡≡す♪ ))
/∧=:|| \_/ `ー‐‐'
じ/___/
248
名前:
デフォルトの名無しさん
:03/04/09 07:33
>>246
別に駄目って事は無いぞ。
249
名前:
デフォルトの名無しさん
:03/04/09 07:42
Java厨じゃないんだから
グローバル=悪なんて固定観念
持つ必要はない
ライフタイムがプロセスと同一とか
終始アクセスが発生するとか
必要なら使えばいい
250
名前:
デフォルトの名無しさん
:03/04/09 09:02
>>249
Javaだと駄目なのか?使ったこと無いから知らん。
■過去ログ置き場に戻る■
1-
次250
最新50
DAT2HTML
0.33f Converted.