【初心者歓迎】C/C++室 Ver.55【環境依存OK】
そりゃまったく同じ名前、引数の関数が2ヵ所以上にあったらぶつかるだろ
typedef enumで定義されている
値はC++で使う場合、クラスにラップした方がいいぉか?
クラスでもnamespaceでもお好きに。
まー、規約次第だろう
統一はしろ
>>954 namespaceでの定義方法がよくわからないぉ?
namespace foo {
enum bar { hoge, piyo, puni };
}
foo::bar x = foo::hoge;
クラスラップした後の話だろうw
namespaceは
新しいクラスを作って中に関数を作ってそれを元のクラスから呼び出したいのですが、
クラス名::関数名();
静的でないメンバ関数の呼び出しが正しくありません というエラーが出て呼び出せません
静的じゃないなら、そのクラスのインスタンスを生成しなきゃ呼べないだろ
静的で使うのならstaticつけれ
クラス名 std;
std.関数名();
インスタンスの生成ってこうですか?
エラーなくなりましたありがとうございます!
VC++2008でプログラムを作り、デバッグボタンを押すと一瞬だけ何か黒い物が表示されてそれ以外は何も動きません
実行結果が見えるようにしたいのですがソースコードのどこに何を書けばいいのでしょうか?
>>962 何かいろいろと勘違いしているかもしれんが・・・うまくいったならいいかw
静的関数というものを理解してなさそうで怖いな
デバッグありで実行せずデバッグなしで実行する
適当に入力待ち状態にしてそこで止める等々
>>963 mainのreturnにブレークポイント設定するとかCtrl+F5で実行するとか
getchar()でも駄目だった
>>966,
>>967 で行ったら確かに止まった、ありがたい
でもなんだか釈然としない
getchar()で駄目な理由として
上でscanf()等を使って文字列入力をしてる場合等がある
_kbhit
// C801.cpp : メイン プロジェクト ファイルです。
#include "stdafx.h"
using namespace System;
int main()
{
Console::Title="一番簡単な数の表示";
int a=123,b=456;
Console::WriteLine("A="+a+" B="+b);
Console::WriteLine("A+B="+(a+b));
Console::WriteLine("A-B="+(a-b));
Console::WriteLine("A*B="+a*b);
Console::WriteLine("A/B="+(double)a/b);
return 0;
}
//入力したコード
>>969 こういうことだから理解してくれ
ブレークポインタ使うならF5
ブレークポインタ使わないならCtrl+F5
>ブレークポインタ
gccかC99で関数のルートアドレス?だか返す
マクロあったけど名前思い出せない
たじけて
聞くは一時の恥、知らぬは一生の恥というので聞かせてもらう・・・・
ルートアドレスって何?
関数の呼び出し元の関数のアドレスのことじゃね?
聞くは一時の恥、聞かれるは一生の不覚
なんか違う
std::cout等を使うクラスを定義する場合は
宣言上部でusing namespace std;するのが流儀?
毎回 std:: を付ける流儀
>>980 自分だけでやってるならアリかもしれないが
複数人で何かを作るのならやめておいたほうがいい
ヘッダのグローバルスコープでusingしなければなんでもいいよ。
関数内でusing
void f(){
using namespace std;
...
}
基本クラスCObjectで作った新しいクラスの中で元のダイアログウィンドウを塗りつぶしたいんですが
どうやって指定すればいいんですか?
CWnd* myPICT=GetDlgItem( IDD_RS232C_TEST_DIALOG );
CClientDC myDC( myPICT );
CRect myRECT;
myPICT->GetClientRect( myRECT );
CPen penBlack( PS_SOLID, 1, RGB(0,0,0) );
CPen* oldPEN=myDC.SelectObject( &penBlack );
CBrush myBrush;
CBrush* oldBrush;
myBrush.CreateSolidBrush( RGB(128,128,128) );
oldBrush=myDC.SelectObject( &penBlack );
dc.Rectangle( myRECT );
myDC.SelectObject( oldPEN );
myDC.SelectObject( oldBrush );
その質問で困っていることを分かってもらおうとするのは無茶だろw
すいません、'GetDlgItem' : 関数に 1 個の引数を指定できません。
というエラーです。
誰か次スレお願い。
俺無理だった。
>>987 IDD_ってダイアログリソースのIDだろ?
DialogBox()かCreateDialog()でしか使えないよ。
GetDlgItem()は対象のウィンドウ内の
子ウィンドウ(ボタンやテキストボックス)のハンドルを取得するためのもの。
CWndを継承してないのなら、
第一引数にウィンドウハンドルを渡す必要がある ::GetDlgItem(HWND, int)
を呼ぶことになる。
今のソースでは根本的に無理だと思うので、
入門書やネットでダイアログの基本的な使い方を見た方がいい。
なるほど、がんばってみます。どうもです。
組込Cと比べてC++は地獄ですね
C++というかVC++じゃ
いや、VC++というよりMFCだなw
言語とOSとシステムコールの違いも勉強しなきゃだね。
あ、CWndの話が出てるのは後側だけか
次スレ〜
俺が立ててこよう
1000ならC/C++消滅
1001 :
1001:
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。