★初心者にVisual C++を教えるスレ★ Part10
正規版じゃないとウィルスしか作れません
朝暇だから、携帯からC++勉強できるとこってない?
>>955 そんなサイトがあるのかどうかは知らないが、
....本でも読んでりゃ良いじゃねーか
本で勉強するという感覚のないのが最近ちょっと多いね
電車だから、今日みたいな休日は空いてるから本でもいいんだけど、
平日は満員で本なんか読めないんだよ。
>>958 そんな満員の状態だと携帯も見れんと思うが?
好きなサイト、コピペして
携帯にメールでも送っとけ
なんとなく
>>958 の人物像を想定できる俺はスーパーハカー
>>962 高い。
やっぱPCからメールで送るのが一番良さそうだな。
>>962 >C++の本はでかいだろ。
お前には俺の言わんとすることが理解出来んようだな。
屑だな。
>>955 印刷しとけ
紙1枚ぐらいなら邪魔にならないし紛失しても問題ないだろ
Visual C++って、どこがvisualなんですか?
Windowが
なんかすげー頭悪そう
958は莫迦。
そういう性格じゃプログラムなんか止めとけ。
工房か?
>>971 >966は密着状態で携帯電話を使用するなと言いたいわけだ。
そんなことも判らないお前はプログラマにはなれても上流工程には一生近づけないよ。
さて、頭の悪い人はほっといてそろそろ新スレですね
おれのは
!?
でかいぜよ?
978 :
デフォルトの名無しさん :04/02/29 01:18
case WM_PAINT:
{
HDC hDC;
PAINTSTRUCT ps;
LPCSTR str = "test";
hDC = BeginPaint(hWnd, &ps);
SetTextColor(hDC, RGB( 0, 0, 255));
SetBkMode(hDC, TRANSPARENT);
TextOut(hDC, 100,100, str, lstrlen(str));
EndPaint(hWnd, &ps);
}
return 0L;
↑はウィンドウプロシジャ内のメッセージのケース文なんですが、
この「中カッコ」を外すとコンパイルできないのはなぜですか?
「strの初期化がcaseラベルによって行われませんでした」
というエラーがでて、次のcase文のところで引っかかってるみたいです。。。
>>978 caseラベルの中で変数の宣言はできまへん。
switchをC++で使うときのマンドクサイところ。
本当は出来ないけど中カッコでcase内全部囲っとけばできるってことなんですかね。
謎な仕様ですね。。。
助かりました。ありがとうございます。
>>980 { } で囲むと、変数の生存範囲が
{ } の中に限られるので、大丈夫なんでしょう。
こういうスタイルが適切かどうかは分からない。
普段はMFC使ってるから。
VC.Net だとこんなコードも通ってしまう分けなんだが。。。
switch (int a = 1)
{
case 1:
int b = 2;
}
なるほどそういうことですか。
そういうもんだと覚えとくことにします。
ありがとうございました。
C++ の言語仕様だと変数の書ける所だと殆どの所で変数定義も出来るらしい。
そんな事を厨にやられた日にゃ。(ry
>>983 次のようなコードだと n = 2 のときに
宣言無しで a が使われちゃうから
問題なんでしょう。
switch ( n )
{
case 1:
int a = 0;
cout << a;
case 2:
a++;
cout << a;
}
>>985 error C2360: 'a' の初期化が 'case' ラベルによって行われませんでした。
>978
ちゃんとエラーメッセージを読め。読みとれ。理解しようとしろ。
>「strの初期化がcaseラベルによって行われませんでした」
別のcaseラベルを通ったときでも、そこより下の位置なら、
strを参照することができてしまうが、初期化部分を通らないから初期化できない。
>982
その初期化式の下に一つでもcaseを作れば、直ちにエラーになる。
って、もう書かれたか。
ええぃ埋めついでに書き込んでやる。
switch (foo) {
int bar;
case 0:
{
int bar = foo;
}
break;
default:
bar = foo;
break;
}
/* 実はcで問題ないコード。 */
>変数の書ける所だと殆どの所で変数定義も出来るらしい。
これってC++じゃなくても最新のISO Cでは出来るようになったとか
噂を聞いたんですが、本当ですか?
int i( int j( A ? B : C ), j += 10 );
993 :
デフォルトの名無しさん:04/02/29 17:57
記念カキコ v(^-^=)
埋め立て
>988
switch()の外でbar使いたいんですけど...
>990 Yes.
997
998
999
1000
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。