■過去ログ置き場に戻る■ 1- 前250 次250 最新50


[memo] "9999999999_00.html#R20" という感じで、URLの最後に "#RレスNo" を追加すると幸せになれます。

★初心者にVisual C++を教えるスレ★ Part11
751 名前:デフォルトの名無しさん :04/04/20 01:13
>>748
Dxヘッダをプロジェクトに入れる。

752 名前:デフォルトの名無しさん :04/04/20 01:54
VC6.0の英語版を使っているのですがどこかで
リソース言語を日本語に変えることのできるToolなどは
ないでしょうか?ぐぐったりしたのですが見つかりませんでした。
どなたか知っている方がいらっしゃったら教えてください。
よろしくお願いいたします。

753 名前:753 :04/04/20 02:17
七五三

754 名前:デフォルトの名無しさん :04/04/20 02:23
>>753
オメ

755 名前:デフォルトの名無しさん :04/04/20 12:49
すいません。デバッグモードからリリースモードに切り替えると
変な警告がでるのですが 直す方法ありますか?
comdlg32.dllへの全ての参照は/OPT:REFによって破棄されます

と出るのですがコモンダイアログは意識して使っていないので
何がどこを見ているのか分かれば参照を外したいのですが。
要は流用ソースで作成したプロジェクトなので以前使っていた
コンポーネントの情報がどこかにリンク情報として依存しているんでしょか

756 名前:デフォルトの名無しさん :04/04/20 13:01
>>755
使ってないから出るんだと思うが。
「デフォルトライブラリをすべて無視」してみ。

757 名前:デフォルトの名無しさん :04/04/20 15:17
>>755
「comdlg32.dllをリンクする設定のようだが一回も使ってないっぽいので
リンクオプション/OPT:REFに従い 参照部分のコードをこっちで削っといたぞ」
という警告。

758 名前:初心者 :04/04/20 22:35
OpenGLで
glutDisplayFunc(display)

などようにクラスのメンバ内でメンバ関数の void display()を処理
したいのですが括弧の中をdisplayにしてもdisplay()にしても通りません
いい方法ないでしょうか?

759 名前:デフォルトの名無しさん :04/04/20 23:40
一つ質問でしゅ。
ビジュアルしーぷらぷらって
何のためにつかうのでちゅか?
まさかGUI作成ではないでちゅよね?
っていうかこんにゃの使っているくちょ現場ってあるんでちゅか?
お客さんだまされてるんじゃないでちゅか?
えむえふちーただちゅかえることになんの意味があるんでちゅか?

使う目的はっきりしろやボケ!質問はそれからだ。

760 名前:デフォルトの名無しさん :04/04/21 00:15
>>759は精神障害者?
それとも引用符の付け忘れだろうか。

761 名前:デフォルトの名無しさん :04/04/21 00:35
>>759
入社早々デスマ乙!
こんなところで良かったら愚痴聞いてやるから死ぬなよ。

762 名前:デフォルトの名無しさん :04/04/21 00:36
放置しろよ。

763 名前:デフォルトの名無しさん :04/04/21 00:56
>>761
いや、愚痴はマ板の相応しいスレでよろしこ。

764 名前:デフォルトの名無しさん :04/04/21 00:58
何か自演のシナリオを貼り付けたみたいだな。

765 名前:デフォルトの名無しさん :04/04/21 12:02
VC++6.0でも.netでも確認した現象です。

いままで動いていたプログラムをC++スタイルに書き直した。
ファイル拡張子が.cではclassで構文エラーになるから.cppにしてリコンパイル。
コンパイルまではいいとして、リンクでコケる。今までリンクできていたライブ
ラリの関数を参照してくれなくなった。環境設定ではちゃんとそのlibを読むよ
うに設定。詳細リストを見るとファイルは認識していて読んでいるのに、その
中の関数を無視する。関数名が一致しているハズなのに未定義扱いでエラー
ドバドバ。

つまり何か、Cで昔書いたlibはC++とリンクできないんか。
そんなに不便なのか?
何かやり方があるのでしょうか?
実際はどうなんでしょう。



766 名前:デフォルトの名無しさん :04/04/21 13:02
>>765
>関数名が一致しているハズなのに
C と C++ では名前付け規則が違います。
(C++ では同じ名前で引き数が違う関数が
存在するため、プレフィックスがつく)

C から呼び出される可能性のある C++ の関数は

  extern "C" {
      :
    関数の宣言/定義
      :
  }

とします。

767 名前:デフォルトの名無しさん :04/04/21 17:25
>766
>C から呼び出される可能性のある C++ の関数は
逆じゃねぇか?

768 名前:765 :04/04/21 17:44
問題完全解決感謝

769 名前:デフォルトの名無しさん :04/04/21 17:47
C++ を練習したいんですけど
なんつーソフトを買えば良いんですか?
学校のソフトだとVisual Studioナンチャラ・・・らしいんですけど・・・



770 名前:デフォルトの名無しさん :04/04/21 18:01
マルチかよ

771 名前:デフォルトの名無しさん :04/04/21 18:02
>>769
なぜかわろた

772 名前:デフォルトの名無しさん :04/04/21 18:07
ナンチャラsage

773 名前:デフォルトの名無しさん :04/04/21 18:11
バリバリビジュアル寄りな質問ですが教えてください。処理が始まると画面が上がり
画面があがった事で詳細処理が動くという作りの
アプリがあります。このアプリの画面をユーザーに
見せる事なく処理を実行したいのですが
SW_SHOWMINIMIZED等でタスクバーのみ表示、または画面がアクティブにない状態だと
処理が止まってしまいます。
画面はアクティブの状態を維持し 見た目画面に表示させないような
矛盾したコードを技術でカバーする方法はないでしょうか?

774 名前:773 :04/04/21 18:14
もし不可であれば
タイトルバーの高さサイズ最小くらいまで小さくする方法を教えてください


775 名前:デフォルトの名無しさん :04/04/21 18:19
最小表示でもその詳細処理が動くようにした方が早いんじゃないかい?

776 名前:773 :04/04/21 18:22
>>775
それはどのようにすればよいでしょう?
客の希望はタスクバーにすらあがらない仕様を望んでいるので
困っています。

777 名前:デフォルトの名無しさん :04/04/21 18:27
どのようにすれば良いかって言われてもその内容がどんなもんなのかが
判らないから言い様も無いんだけど、まずなんで最小にする、或いは
非アクティブ状態になると処理が止まってしまうのかって事だね。
そのトリガが判れば通常アプリケーションが動いている間詳細処理を
実行し続ける方法も自ずと見えてくるんじゃないかな。

778 名前:デフォルトの名無しさん :04/04/21 20:00
マルチじゃないって。前スレには断ってあるモンよ。
何を買えば良いのか分からんのよぅ・・・

779 名前:デフォルトの名無しさん :04/04/21 20:16
>>778
学生ならVisual Studio学割で買っとけ。
フリーのコンパイラもあるが、多少身銭を切っといた方が勉強にも身が入るだろう。

780 名前:デフォルトの名無しさん :04/04/21 20:45
つか、C++スレで聞いたほうが公正な意見が
得られると思うが、ってそこまで頭が回りませんか。

781 名前:デフォルトの名無しさん :04/04/21 21:05
ここもCだと・・・

782 名前:デフォルトの名無しさん :04/04/21 21:24
Visual C++ 6.0を使っています
わかりやすいページがあったら教えてくれませんか?
猫のところは古いんで6.0だと不便なんで・・・

783 名前:デフォルトの名無しさん :04/04/21 22:17
>>782
http://www.microsoft.com/japan/msdn/library/default.asp

784 名前:デフォルトの名無しさん :04/04/21 22:32
>>782
古くても6.0なら猫で十分。6.0も古いし。何が不便なの?

785 名前:デフォルトの名無しさん :04/04/21 22:52
高度なテクが必要だと聞いたのですが方法をご存知のかた
教えてください。
VB側からVCで作成したDLLを参照しているのですが
DLL側の処理が終わらない間にVB側へ操作が返ってきます。
(そのままモーダレスのような状態でDLL側は動きます)

これをVC側のエクスポート関数側でブロックしたいのですが
ここでWhileを使って応答が返るまで待機させようとしたのですが
このループに入った途端に処理側もフリーズしたような状態になりました
なんか上手い応答待機の方法ないですか?

786 名前:デフォルトの名無しさん :04/04/21 23:11
関数テンプレートって、どういうときに使うと便利なんですか?

787 名前:デフォルトの名無しさん :04/04/22 01:10
>>786
何でもいいからC++の本を一冊読破しろ。
話はそれからだ。

788 名前:デフォルトの名無しさん :04/04/22 07:35
>>787
お前アホか?
ちゃんと答えてやれよ、ボケ!

789 名前:デフォルトの名無しさん :04/04/22 08:42
関数テンプレートは、「どの型を引数にとっても同じ操作をする」時に便利。
「二つのオブジェクトへの参照を引数にとり、値を入れ換える関数」が必要だとして、
を、整数用、浮動少数点用、構造体用、って 別々に用意するの、めんどいッショ。

790 名前:デフォルトの名無しさん :04/04/22 09:44
Windows2000 Pro SP4 & Visual Studio 6 sp5の環境にvs6SP6をインストールしてみたのですが、
インストールが正常終了してもmfc42.dllが更新されません。イベントログを見ると、
「保護されいるmfc42.dllが更新されそうになったから、元のバージョンに戻した」のイベントが残っています。
mfc42.dllを更新するには、手動でcab展開&コピーしないといけないのですか?

791 名前:デフォルトの名無しさん :04/04/22 10:16
VC .NETを使っています。
分割コンパイルをすると、クラスが定義されていない旨のエラーが出ます。
特別な設定が必要なのでしょうか?

792 名前:デフォルトの名無しさん :04/04/22 10:29
>>791
プログラムの誤り。

793 名前:デフォルトの名無しさん :04/04/22 11:09
>>788-789
Visual C++ スレで答える必要もないと思うが、春か…。

794 名前:デフォルトの名無しさん :04/04/22 15:04
CFrameWndをDoModalで開く方法を教えてください

795 名前:デフォルトの名無しさん :04/04/22 20:16
自分で実装しる

796 名前:721 :04/04/22 20:53
vc.net を使ってます。

mainfrmの関数をオーバーライドするとします。
VC6.0とかでは、クラスウィザード(?)から
オブジェクトIDを指定できるじゃないですか。

あれって.netではどうやればいいのでしょうか。
メッセージをどこかに追加しなければいけないのでしょうか。

なんか説明しにくいのですが、
もしかして質問が支離滅裂でしょうか。



797 名前:デフォルトの名無しさん :04/04/22 21:33
>>796
ms-help://MS.MSDNQTR.2003FEB.1041/vccore/html/vcgrfWhereIsClassWizardInVisualCNET.htm

798 名前:デフォルトの名無しさん :04/04/22 23:09
おまいら本当は役たたずでしょ実は






といったら吠える香具師↓

799 名前:デフォルトの名無しさん :04/04/22 23:10
(゚Д゚#)ウオォォォォォォォ!!!!!

800 名前:デフォルトの名無しさん :04/04/22 23:16
ハル ウラーウラーラーラー orz

801 名前:782 :04/04/23 20:25
>>784
レス遅くてすいません
猫のところのはそのままコピーするとエラーが起きるからです
初心者なのでエラーの理由とか表示されてもさっぱりだし・・・

802 名前:デフォルトの名無しさん :04/04/23 21:45
それも勉強だよ。他にも同じ様な例を挙げてるサイトもあるかもしれんし。
調べ方に慣れるのもかなり重要だから。

803 名前:デフォルトの名無しさん :04/04/24 03:50
実行ファイルの最初の部分にたまにコメントを埋め込んである人がいるんですが、
あれってどうやって実現しているんですか?

http://www.din.or.jp/~ch3/game.html
ここにある http://www.din.or.jp/~ch3/gba01w.zip の GBA.EXE をバイナリエディタでみると、コメントがあるんですが・・・

やり方がわかるひと。おしえてください。

#pragma comment( exestring, "...." )

ではないですよね?(vs.netでは使えないんですが)



804 名前:デフォルトの名無しさん :04/04/24 04:14
>>803
コメントってどれのことだ?
私にはWin32アプリに必ず埋め込まれる
This program cannot be run in DOS mode
しか見当たらないが。

805 名前:デフォルトの名無しさん :04/04/24 04:35
STUBを自前で作っただけではないのかな?

806 名前:デフォルトの名無しさん :04/04/24 11:38
>>804 0x2E8からの文字列のコトだと思う
#pragma comment(linker,"/comment:ふんにゃか") とか?

807 名前:デフォルトの名無しさん :04/04/24 11:56
質問です。
ListControlをレポートに設定して
それをダイアログベースのフォームに貼り付けたのですが
m_lcTest.InsertColumn( 0, "TEST");
と言う感じでカラム追加しても表示されません
デバッグモードでやると、例外が発生してるみたいです。

ちなみに、1つ目のダイアログに貼り付けると問題なく出来るんですが
1つ目からDoModalで表示したダイアログでやると失敗するんです。
何か特別な方法が必要なのでしょうか?

808 名前:デフォルトの名無しさん :04/04/24 17:19
現在のウインドウがフルスクリーンかウインドウモードかを判別する方法をおしえてください

809 名前:デフォルトの名無しさん :04/04/24 17:43
>>808
ウィンドウスタイルを取得すればいいんだが、
API でやりたいのか?それとも MFC?

810 名前:デフォルトの名無しさん :04/04/24 17:47
>>808
GetWindowPlacementなんて好き?


811 名前:デフォルトの名無しさん :04/04/25 12:57
タイトルバーとかの余白分って、最初に
MoveWindowするためにゴチャゴチャやるときにしか求められないんですか?

812 名前:デフォルトの名無しさん :04/04/25 13:40
>>811
言ってることがよくわからんが
GetWindowRectとGetClientRectして差分を出したらいいのか?

813 名前:デフォルトの名無しさん :04/04/25 13:45
>>811
まさかGetSystemMetrics()を知らないんじゃないだろうね?

814 名前:デフォルトの名無しさん :04/04/25 14:05
>>812
すみません、何か勘違いしていたようです・・・。学校で、

HWND hDesk;//デスクトップを操作する
RECT ScrnSize;//デスクトップの大きさを格納
hDesk = GetDesktopWindow();//デスクトップハンドルを取得
GetWindowRect(hDesk, &ScrnSize);//デスクトップの大きさを取得

このように習ったので、GetWindowRectはデスクトップの大きさしか取って来れない
と勘違いしてました・・・。ウィンドウのハンドルを指定すればいいんですね。
お騒がせしました・・・。

>>813
それは知らなかったです、調べてみますね。ありがとうございます。

815 名前:デフォルトの名無しさん :04/04/25 19:35
VC++.net 2003 STD でATLコントロールを作成する時、
「ランタイムで非表示」をチェックして作成したコントロールを
WTLのCAxDialogImplに貼り付けても、実行時にコントロールの表示が消えません。
とりあえずGetAmbientUserMode()で実行モードかデザインモードか判断して
描画しないようにしていますが、こんなやり方しかないのでしょうか?

816 名前:デフォルトの名無しさん :04/04/26 02:17
質問なんですけど
今、Win32APIを使ってWindowsプログラミングの勉強してるんですけど
vcvars32.batに適切なコマンド?を渡せばIDEなんかを使わなくてもいけますか?
軽いエディタで作業したいので

817 名前:デフォルトの名無しさん :04/04/26 16:44
最近プログラムの勉強をはじめたものです。
ダイアログベースで、左にリストがあり、そのリストを選択すると右の項目が変わるような
(netscapeなどの設定画面)画面を作りたいのですが、どのように構成にすればよくわかりません。
どなたか教えてください。よろしくお願いします。

開発環境は Visual C++ .net 2002 WindowsXPです。

818 名前:デフォルトの名無しさん :04/04/26 18:46
>>817
急がば回れ。タブコントロールについて調べなされ。

819 名前:デフォルトの名無しさん :04/04/26 18:54
>>818
ネスケのPreferencesなんだからTreeコントロールだろ

820 名前:デフォルトの名無しさん :04/04/26 19:16
>>818,819

CTreeを使って試してみることにします。
ありがとうございました。



821 名前:デフォルトの名無しさん :04/04/26 19:22
>>819
>>817がわからないのは、
>そのリストを選択すると右の項目が変わる
ってのじゃないの?

って書こうとしたら>>820かよ。スマンカッタ。

822 名前:デフォルトの名無しさん :04/04/26 19:57
>821

CTreeが右を変えてくれると思ったら違いました…
その、右の項目を変えるにはどうすればいいんでしょうか。

823 名前:デフォルトの名無しさん :04/04/26 20:41
vc.netで、SDIです。
途中まで作って、やっぱりスプリットウィンドウにしようとしたら、
プログラム終了時に、

〜でハンドルされていない例外が発生しました : ユーザー設定のブレークポイント。
と言われてしまいます。

MainFrame::OnCreateClientの中で下記のようにしています。
(m_spWndは、CSplitterWndのオブジェクトです。)

m_spWnd.CreateStatic(this, 1,2);
m_spWnd.CreateView(0,0,RUNTIME_CLASS(追加したビュー),CSize(200,0),pContext);
m_spWnd.CreateView(0,1,RUNTIME_CLASS(最初からあるビュー),CSize(0,0),pContext);


上記の2行目と3行目を入れ替えると(単純にそのまま行の順番を変えると)
例外が発生しなくなります。

自分で調べるべきなのでしょうが、どこからどう調べていいかわからず
途方にくれてます。

ヒントだけでも、お願いします。

824 名前:デフォルトの名無しさん :04/04/26 20:42
>>822
>>818

825 名前:デフォルトの名無しさん :04/04/26 21:09
>>817
Tabライクなページ・ビューの切り替えね

指摘のMozのPreferencesみたいな設定ダイアログを起こす場合はCDialogでなくて
CPropertySheetを使い、CPropertyPageをそこにAddPage()で乗せていく。リソース
はダイアログのものでOKでクラスを作成するときにCPropertyPageにしてやる。
検索すればソースは出てくると思う。

単純なページでできているもので、もっと簡単にやりたいなら、普通のダイアログに
使いたいコントロールを重ねて貼って、ShowWindow(SW_SHOW)とか
ShowWindow(SW_HIDE)使って、コントロールを消したり出したりする方法もある。

826 名前:デフォルトの名無しさん :04/04/26 21:29
ビジュアルチックな質問になるんですが
よろしくお願いします。CFrameWndを使用しています。
ウインドウが作成されると白いバックグラウンドに黒の文字で
画面が表示されます。

顧客をだまくらかすのに必要なのですが、この画面を
VBのメッセージボックスのように灰色ダイアログ化して文字も
灰色にして中で何が行われいるかわからないようにしたいのです。
可視をいじくると不具合がでます。
※アクテイブにしていないといけないアプリです
さらに「しばらくお待ちください」のビットマップを
そこに貼り付けたいのです。
このあたりの制御コードに詳しいかた手順をお願いします。

827 名前:デフォルトの名無しさん :04/04/26 21:36
>>824
>>825

なんとなく見えてきました。
CPropertyPageのAddPageする場所を表示するべき場所に指定するということですよね?
どうすれば出力すればいいのかが自分的な壁ですが、色々試してみたいと思います。


828 名前:デフォルトの名無しさん :04/04/26 21:58
>>826
素直に文字を表示しなければいいだけじゃないの?

829 名前:826 :04/04/26 23:18
>>828
当初その予定だったのですが、顧客が文句を言ってきたのです。
画面が気になるから非表示にするかmsgbox化しろ との内容です。
ビューをダイアログに変えたいのですが、弊害があり
なるだけ既存のコードに大幅な変更を掛け図に 姑息な手で
稼動をへらしたいなあと思いました。
なのでお知恵を拝借させてください。

830 名前:デフォルトの名無しさん :04/04/26 23:32
よくわからんが OnEraseBkgnd でゴニョゴニョするとか。

831 名前:デフォルトの名無しさん :04/04/26 23:56
よくあるスプラッシュ系ウインドウでも表示しとけばええんでないの?

832 名前:デフォルトの名無しさん :04/04/27 00:46
ダミーの子ウィンドウを上に被せとくとか

833 名前:デフォルトの名無しさん :04/04/27 00:49
>>832
それですな。そのウィンドウに
「現在処理中です」とでも書いとけばいいんでない?

834 名前:デフォルトの名無しさん :04/04/27 01:50
書いたら処理してるのばれるのだか。

835 名前:デフォルトの名無しさん :04/04/27 01:57
じゃあ「現在処理はしていません。本当ですよ」と
書いておけばいい。

836 名前:デフォルトの名無しさん :04/04/27 02:30
それですな。

837 名前:デフォルトの名無しさん :04/04/27 02:50
あまりにも初歩的なことで申し訳ないんですが、
最近VS.NET2003アカデミックを使い始めて
いきなり理解不能なことにぶち当たってます。

新規プロジェクトでWin32コンソールプロジェクトを作成し、
以下のコードを書きます。
-------------------------
#include <iostream>

int main(void)
{
cout << "TEST" << endl;
return 0;
}
-------------------------
これをコンパイルするとcoutやendlが定義されてない識別子だと怒られます。

今までbccとgccと、大学でVC++6.0を触っただけの自分には
何がなんだかわかりません。
ごく普通にC++プログラムを作るにはどうしたらいいでしょうか?

838 名前:デフォルトの名無しさん :04/04/27 02:53
using namespace std;

839 名前:837 :04/04/27 02:59
それか!!
今まであえて使う場面がなかったので忘れてました。
即レスありがとうございます。

840 名前:デフォルトの名無しさん :04/04/27 08:48
>>835さん、どうもありがとうございます。
その作戦でいこうと思います。
助かりました。

841 名前:デフォルトの名無しさん :04/04/27 13:26
>>837
> #include <iostream>

iostream.h

842 名前:デフォルトの名無しさん :04/04/27 16:26
おら、cからC++に移行しかかってます。


843 名前:デフォルトの名無しさん :04/04/27 22:44
>>841
っつうか.Netはiostream.hはいらないというか ない


844 名前:デフォルトの名無しさん :04/04/27 22:46
std::cout
std::endl

845 名前:デフォルトの名無しさん :04/04/27 22:54
VC++で、実行したときにどの変数にどんな値が入っているのかリアルタイムで下方に表示する方法教えてください

846 名前:デフォルトの名無しさん :04/04/27 23:15
>>845
メンドウだから別でコンソールを開いてそっちに表示しようよー。

847 名前:デフォルトの名無しさん :04/04/27 23:54
教えてもらっていい?俺あんまVcわかんないんだけ
進入社員なんだよね。少しだけ学校で6触っただけなんだよ
いきなりさ。コレ解析してくれって27のPMから押し付けられたソース
リリースで実行したら4回目でコケるわ デバッグに切り替えたら
デバッグ情報がないたら文句いわれるわ
わけわかめ どうしたらいいんだこれ?

848 名前:デフォルトの名無しさん :04/04/27 23:58
>>845
TRACEマクロのことか

849 名前:847 :04/04/28 00:06
あんましこういうとこ出入りしてないんで他で
マルチポがどうとかキレられてしまいました。
口の利き方がどうとか回答だれもくれないとか罵られて
なんか凹んで来た。
訂正して改めて質問します。
メモリが”READ”になることはできませんでした
とか変な日本語が表示されるのですが、これは????メモリー?と呼ばれる
領域が読込めなかったと解釈していいメッセージなのでしょうか?

850 名前:デフォルトの名無しさん :04/04/28 00:10
>>843

エラー状況と対処法として>>841はアリだと思うんだが

851 名前:デフォルトの名無しさん :04/04/28 00:13
>>849
> メモリが”READ”になることはできませんでした

バッファ・アクセスに関しておかしなコードがあるとそういうエラーになる。
それだけじゃ何が悪いのか分からない。プログラムの規模も分からないし。

852 名前:デフォルトの名無しさん :04/04/28 00:16
>>849
んー、それだけだとどうしようもない。
環境がダメなのか、ソースがダメなのかもはっきりしない。
とりあえず、そのREADなんたらにかんしてはgoogle検索でもしてみることをお勧めする

853 名前:デフォルトの名無しさん :04/04/28 00:18
>メモリが”READ”になることはできませんでした
>とか変な日本語が表示されるのですが

まぁたしかに変な日本語だよな。
慣れちゃえば定型文なんだけど。
はじめて見る人はなんのことやらサパーリだろう。


854 名前:デフォルトの名無しさん :04/04/28 00:29
はじめてのC++を読んだので、次はVC++の入門書に手を出してみたいと思っています。
このスレ的に、お薦めのVC++入門書は何ですか? 教えてください。

855 名前:デフォルトの名無しさん :04/04/28 00:55
>>850
アリなのと適切なのは違うよな。そのくらいわかるよな。

856 名前:デフォルトの名無しさん :04/04/28 01:28
>>854
GUIに行く前にSTLの本読んどけ、っと言ってみるテスト。

857 名前:849 :04/04/28 01:49
皆さんレスありがとう。規模とはステップの事?
何やらアルファサーバーにテレネットで
接続して コマンドを送るプログラムです
呼び出し元を閉じると
このエラーがでるよ

858 名前:デフォルトの名無しさん :04/04/28 03:47
>メモリが”READ”になることはできませんでした

誰だっけか。この奇妙な文の理由を考察してたね。

英語だと "memory cannot be %s" というフォーマットを用意して,
%s に "read" や "write" を代入するだけで「メモリから読み出せませんでした」とか
「メモリに書き込めませんでした」になるんだよね。
同じ事を日本語でやるならば "メモリから%sませんでした" というフォーマットを用意して
"読み出せ","書き込め" というリソースを用意すれば,この部分に関してはクリア。

しかし,英語版Winだと "read" や "write" つー文字列リソースをいろんな場面で
使いまわしてるそうな。それを日本語に翻訳した時,どうしても "読み出せ","書き込め" を
使いまわせないような場面が出て来るそうな。
苦肉の策として,奇妙な言い回しを採用したそうな。

二人は仲良く暮らしましたとさ。めでたしめでたし。

859 名前:デフォルトの名無しさん :04/04/28 08:50
!すげーなおい

860 名前:デフォルトの名無しさん :04/04/28 10:33
あと、no 〜 found. 見たいなものを 「何も無い。が見つかりました」とかね

861 名前:デフォルトの名無しさん :04/04/28 11:02
ライブラリの作成に関する質問です。よろしくお願いします。
MFCをつかう・使わないプログラムでも、
マルチスレッドでも、シングルスレッドでも、リンクできるライブラリ
を作成したいのです。
ライブラリの作成時にNODEFAULTLIBなどしてはいるのですが、
プログラムのリンク時に、
libcd.lib(dbgheap.obj) : error LNK2005: _malloc は既に msvcrtd.lib(MSVCR71D.dll) で定義されています。
libcd.lib(dbgheap.obj) : error LNK2005: __malloc_dbg は既に msvcrtd.lib(MSVCR71D.dll) で定義されています。
としかられます。

すいませんが、よろしくお願いします。


862 名前:デフォルトの名無しさん :04/04/28 11:04
メモリから書き込めませんでした

863 名前:デフォルトの名無しさん :04/04/28 12:27
         ______ 
       ,;i|||||||||||||||||||||||||||||||ii;、         _/
     /||||||||||||||||||||||||||||||||||||||ii;、        \
  / ̄ ̄\||||||||||||||||||||||||||||||||||||ii;゙ヽ,      /
'" ̄ヽ     ヽ!!||||||||||||||||  ||||||||||!!"ヘ     <  ロマンティックageるよ
ヽ          ゙!!!||||||||||||  |||||||!!   iヽ── /
|||l            ゙゙ヽ、ll,,‐''''""     | ヽ|||||||||ロマンチックageるよ
|||l     ____   ゙l   __   \|||||||||  
||!'    /ヽ、     o゙>┴<"o   /\   |'" ̄| ホントの勇気 見せてくれたら
\  /  |ミミヽ──‐'"ノ≡- ゙'──''彡| |、 |   |
   ̄|    |ミミミ/" ̄ 、,,/|l ̄"'''ヽ彡|| |、/   / ロマンティックageるよ
 ヽ、l|    |ミミミ|  |、────フヽ |彡l| |/  /_
  \/|l    |ミミミ| \_/ ̄ ̄フ_/  |彡|l/    ̄/ ロマンティックageるよ
  \ ノ   l|ミミミ|  \二二、_/  |彡|      フ  
    ̄\  l|ミミミ|    ̄ ̄ ̄  |メ/       \トキメク胸に キラキラ光った
    | \ ヽ\ミヽ    ̄ ̄"'  |/        /
    /  \ヽ、ヾ''''ヽ、_____//       /_夢をageるよ
  /  ヽ ゙ヽ─、──────'/|         ̄/
. /       ゙\ \     / / \__
   ───'''" ̄ ̄ ゙゙̄ヽ、__,,/,-'''" ̄   ゙''─


864 名前:デフォルトの名無しさん :04/04/28 13:43
別プロセスのハンドルを取得するダイアログベースのプログラムを書いているんですが、

OnInitDialog関数内でプロセスハンドルを取得したときと、
たとえば、ボタンを押したときにプロセスハンドルを取得する場合とで
取得できるプロセスハンドルが変化してしまうのですが、なぜでしょうか?

プロセスIDをみると同一なので、同じハンドルが取得できるはずだと思うのですが
なぜか変化してしまいます。

出来れば、ダイアログが立ち上がったと同時に自動的に別プロセスのハンドルを
取得したいのですがどうすればいいのでしょうか?

865 名前:864 :04/04/28 15:04
馬鹿な質問してしまったようです、忘れて下さい。
ごめんなさい…

866 名前:デフォルトの名無しさん :04/04/28 19:48
>>845

867 名前:デフォルトの名無しさん :04/04/28 22:15
http://page4.auctions.yahoo.co.jp/jp/auction/d47227135

868 名前:デフォルトの名無しさん :04/04/28 22:32
あの・・・本当にめちゃくちゃ初心者なんですが、聞いてもいいですかね?

あるホームページのプログラミング初心者講座で文字を表示させるだけの作業
の方法が書いてありました。
ところがそれで使ってるコンパイラがVC++だったため、私が買ってしまった
Visual Studio .NET 2003ではどのようにその作業をするのかまるで分かりません。
vc++netの本もいくつか読んだのですが・・・。

ちょっとしたとっかかりだけでもいいんで教えていただけないでしょうか?
言ってることちんぷんかんぷんだったらすみません。


869 名前:デフォルトの名無しさん :04/04/28 22:45
#include "stdafx.h"

using namespace std;

int main()
{
   cout << "Hello World C++ \n";
   
   return 0;
}

870 名前:デフォルトの名無しさん :04/04/28 22:49
初めて車買うのにF1買っちゃったのかな?

871 名前:867 :04/04/28 22:54
>>869
すみません。ソースの書き方が分からないのではなく(載ってましたし)、どうやって
ビルドするかが分かりません。
VC++はビルドを実行すると勝手にワークスペースが作られるようですが、どうも
これは違うようです。
ビルドを実行するまでの手順を教えていただけたらありがたいです。
(説明書わけわかんない・・・)

>>870
とりあえず新しい方がいいんだろうと思って買ってしまいました・・・。


872 名前:デフォルトの名無しさん :04/04/28 22:57
ファイル⇒新規作成

@C++プロジェクトでwin32アプリケーションを指定し、ファイル名を入力してOKボタン

Aアプリケーションの設定をクリック、コンソールアプリケーションのチェックボックスをON

完了押せば

#include "stdafx.h"

int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}
ができあがって、
そこに
using namespace std;

cout << "Hello World C++ \n";
を記述してビルド

873 名前:デフォルトの名無しさん :04/04/28 22:57
>>871
とりあえず、猫でGO!
http://www.kumei.ne.jp/c_lang/

874 名前:デフォルトの名無しさん :04/04/28 22:57
っていうか 何が聞きたいのかわからん

875 名前:デフォルトの名無しさん :04/04/28 22:58
>>871
ctrl+F5 連打

876 名前:デフォルトの名無しさん :04/04/28 23:14
>>872
出来ました♪これが出来ない事には先に進めなかったんで本当に助かりました。

>>873
初めて知ったところですが、かなり良さそうですね。
これから活用したいと思います。本よりいい感じかも・・。

>>874
説明ちんぷんかんぷんですんません。
自分でも何書いてるのかよく分からないような気もしたんですが、
知識が全然ないんでどうしようもなかった・・・・。

皆さんレスありがとうございました!!

877 名前:デフォルトの名無しさん :04/04/29 08:13
ツリーコントロールで、現在選択中のアイテムが
何階層目にあるのかを知る為には、
どのようにすれば良いでしょうか?

878 名前:デフォルトの名無しさん :04/04/29 08:42
うに

879 名前:デフォルトの名無しさん :04/04/29 10:19
TTreeNode.Level

880 名前:デフォルトの名無しさん :04/04/29 12:48
>>879 逝ってよし

881 名前:デフォルトの名無しさん :04/04/29 13:35
>>877
for(int i=0 ;(hParent = GetParentItem(hParent)) != NULL && hParent != GetRootItem(); i++);

882 名前:847 :04/04/29 14:41
みなさんレスありがとう。
色々試してみたんだけど 全然改善されないよ
V呼び出し元のアプリを閉じたときに デバッグで不具合個所を見ても
NTDLL! アドレス番号? のとこでいつも同じコケ方してる
こういう時の解析ってどうするんですか?

883 名前:デフォルトの名無しさん :04/04/29 15:00
>>847
>リリースで実行したら4回目でコケるわ
3回目までは正常に動作するの?4回目でコケるっていうのも、
正常に動作し終わった後でエラーになるの?





884 名前:854 :04/04/29 16:44
>>856
遅レスになりましたが、どうもありがとうございます。
STLの意味は何となくつかめたので、土日にでも本を探してみたいと思います。

885 名前:847 :04/04/29 18:41
>>883
正確にいうとMFCのDLLで呼び出した関数を連続3回まで
正常に呼び出し成功して4回目にアプリケーションエラーで落ちる事が
あるんだけど、必ず という確立じゃなくて 不意に落ちる。

VBの中ではこの関数をループ内で使用していて
For i = 0 to 9
で明示的に10回連続でコールします。
ボタン一回押下するにつき10回関数が呼ばれるのだけど
そのボタンを4回押すとエラーが発生してしまうんで
何かが初期化されていないからか スタックとかメモリの領域が壊れるか
そのあたりがキーなのかな?とは思っているんだけど

いずれにしても一度ループで10回関数をコールしたあと
VB側を終了したらまた違う番地でのアプリケーションエラーがでている
ようっす。どうやって解析したらよいものか。。。


886 名前:デフォルトの名無しさん :04/04/29 18:53
待て、VB?
今までにそういう情報かいてたかモマエ・・・

887 名前:デフォルトの名無しさん :04/04/29 19:03
ほかにも重要な情報がいろいろ抜けてて、その中で普通の人はやらない大ポカを
してるんだろう

888 名前:デフォルトの名無しさん :04/04/29 19:08
VBでデバッグしてるわけじゃないよな・・・

889 名前:デフォルトの名無しさん :04/04/29 19:26
>>885
デバッグしたいのはDLLなの?それとも、そのDLLは十分使用されていて
問題がないことがわかっていて、VBのアプリをデバッグしたいの?

まあたぶん前者なんだろうけど。
そのDLLを使用するVCのアプリを作ってデバッグしなよ。
そのDLLのソースもあるんだろな?

890 名前:デフォルトの名無しさん :04/04/29 19:28
>>847を見る限りろくにデバッグもしてない予感がするのは俺だけだろうか

891 名前:デフォルトの名無しさん :04/04/29 19:45
Visual C++6.0なんですが、
ダイアログエディタのコントロールパレットを
軽い気持ちで消したら、
どうやっても出てこないんですが・・・

892 名前:デフォルトの名無しさん :04/04/29 19:51
>>891
上のメニューが並んでる所の何も無い場所で右クリック→コントロールにチェック

893 名前:847 :04/04/29 20:04
>>886
VBは試験的につかってるだけだよ
この先MFCのEXEにする。MFCのウイザードで作ったEXEで
このDLLをロードしても終了時にアプリケーションエラーが
出るから多分DLL側に問題あるんだよな

>>889
もちろんDLLだよ。今まで単純にループなしで
あまりコールされなかった関数だったんだけど今回の開発で呼び元に手が入って
そのDLLが連続処理時に不具合でてるから解析してくれといわれた

>>890
まだデバッグも出来てないよ。何かわからんがDLLのプロジェクトを
開いてデバッグ実行するとデバッグ情報がありません と怒られて
無視してブレークの位置までF5を押していくとエラーになってた

894 名前:デフォルトの名無しさん :04/04/29 20:14
DLLをデバッグする方法がわからないんでしょ?
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vsdebug/html/vcoriDebuggingTechniquesForVisualC.asp
読んだ?

895 名前:894 :04/04/29 20:25
って書いたけど>>894だけじゃわからんかもナー・・・

DLLは、デバッグビルドされた .dll ファイルじゃないとイカンよ。
で、呼び出し側のプロジェクトで、そのdllのソースがある場所を
設定してやるとよい。

896 名前:847 :04/04/29 20:40
>>895
はい その辺はきちっと押さえてて デバッグビルドDLLを
パスの通った場所に格納してデバッグ実行しているよ。

他のDLLだと問題なくデバッグでステップ実行できるんだけど


897 名前:デフォルトの名無しさん :04/04/29 20:42
VisualC++.net 2003を使い始めました。

拡張子「.c」でC言語を実行したいのですが方法が分かりません。「.cpp」なら普通に実行されるんですが…

簡単なことかもしれませんが、教えて下さい。

898 名前:894 :04/04/29 20:45
パスのとおった場所か・・・

んーとさ、呼び出し側のプロジェクトのメニューから、
[プロジェクト]→[設定]→[デバッグ]タブ→[カテゴリ]を[追加するDLL]
にして、その下のリストに使用するDLLを追加してある?
ここで指定するDLLファイルは、DLLのソースディレクトリ内の
debug ディレクトリの中にあるファイルを指定して。
そうすると、デバッグ中にそのDLLの関数に入ろうとしたときに
ソースファイルの場所を指定するダイアログが開かないかな。

899 名前:894 :04/04/29 20:47
>>897
http://www.borland.co.jp/qanda/lang/l0001912.html
取り急ぎ。もっと詳しいページもイパーイあるけど。

900 名前:デフォルトの名無しさん :04/04/29 20:56
>>899
レス有難うございます。
しかし、プログラム的な質問じゃなくてVisualC++2003の使い方についての質問です。
質問の仕方が悪かったです。すいません。

901 名前:894 :04/04/29 20:58
>>900
ごめんなさい。FAQ的なアレかと思いました・・・。
2003はわかりません。

902 名前:デフォルトの名無しさん :04/04/29 21:38
Windows2000, VisualC++6.0でウインドウズアプリを作っているのですが、
SetDCPenColor関数やSetDCBrushColor関数を使いたいのです。
しかし、コンパイルすると「定義されていない識別子です。」とエラーが出てしまいます。
VisualC++のエディタ上ではSetDCPenColor(の"("を押すと、引数が表示されてるので、
認識されてはいると思うのですが。。。
どなたか分かる方、よろしくお願いします。

903 名前:デフォルトの名無しさん :04/04/29 21:47
#if (_WIN32_WINNT >= 0x0500)
WINGDIAPI COLORREF WINAPI SetDCBrushColor(IN HDC, IN COLORREF);
WINGDIAPI COLORREF WINAPI SetDCPenColor(IN HDC, IN COLORREF);
#endif

こーなっとる

904 名前:デフォルトの名無しさん :04/04/29 22:13
>903さん
レスありがとうございます。
_WIN32_WINNTの値を0x0500にするとうまくいきました。
ただWindows2000では_WIN32_WINNTの値は0x0500だと思うのですが。
うまくいったからいいのですが、少し気になります。
でもどうもありがとうございました!

905 名前:デフォルトの名無しさん :04/04/29 23:01
初心者によくありがちな勘違いだが、OSを変えたからといって_WIN32_WINNTが勝手に定義されるわけじゃない。

906 名前:デフォルトの名無しさん :04/04/29 23:13
>905さんへ
そうだったのですか、知りませんでした。
どうもありがとうございます!

907 名前:デフォルトの名無しさん :04/04/30 00:39
すいません初心者です。

OnDraw関数の中で、

CRgn aaaa;
aaaa.CreateRectRgn(10,10,300,300);
pDC->SelectObject(&aaaa);

aaaa.delete();

とかやりたいんすけど、selectしたままだと消せないと
聞きました。どうやってデリートしたらいいでしょうか。

908 名前:デフォルトの名無しさん :04/04/30 00:49
元に戻せ

909 名前:デフォルトの名無しさん :04/04/30 00:50
>>907
SelectObjectの戻り値。

910 名前:デフォルトの名無しさん :04/04/30 01:02
>>908
戻し方がわかりません。(すいません

>>909
CPenのオブジェクトとかは選択したときに元の
やつが戻り値に戻されると思うのですが、

CRgnの場合をヘルプで見ると、intが戻っている
ようなのですが…いかようにすればいいのでしょうか。

911 名前:デフォルトの名無しさん :04/04/30 01:10
>>910
リージョンの場合は元に戻さなくてもいい。

912 名前:デフォルトの名無しさん :04/04/30 01:15
>>911
あ、そうだったんですか。
どうもありがとうございます。

913 名前:デフォルトの名無しさん :04/04/30 01:18
そう言えば、どれを戻して、どれは戻さなくてもいいんだろう・・・
CPenは?CBrushは?CFontは???

914 名前:デフォルトの名無しさん :04/04/30 01:19
リージョン以外はすべて戻す。

915 名前:デフォルトの名無しさん :04/04/30 01:45
面倒くさいときは SaveDC()とRestoreDC()

916 名前:デフォルトの名無しさん :04/04/30 03:35
Visual C++ でホームページのボタンを自動で押すソフトは作れますか。

917 名前:デフォルトの名無しさん :04/04/30 03:40
作れます

918 名前:デフォルトの名無しさん :04/04/30 08:02
不正クリックでバナクリ稼いでんじゃねーよヴォケ

919 名前:デフォルトの名無しさん :04/04/30 08:44
>>917
それは Visual C++ 6.0 でもできますか?

920 名前:デフォルトの名無しさん :04/04/30 09:36
誰か>>897教えて下さい。
お願いします。

921 名前:デフォルトの名無しさん :04/04/30 09:42
>>897は質問の意味がわかりませんな。
コンパイルのことならそういうスイッチがあったと思われ。

922 名前:デフォルトの名無しさん :04/04/30 09:56
VC++でOfficeのバージョンを取得する便利な関数ってありますか?
無い場合はどうやって取得したらいいんですか?

923 名前:デフォルトの名無しさん :04/04/30 10:00
>>922
レジストリの値を参照すればいいんじゃないの?

924 名前:デフォルトの名無しさん :04/04/30 10:01
レジストリ、見てみたんですけど、どれがバージョンなのか…。

925 名前:デフォルトの名無しさん :04/04/30 10:21
>>921
そうです。「.c」だとコンパイルされず実行出来ないんです。

926 名前:デフォルトの名無しさん :04/04/30 11:04
>>925
お前の独自用語の説明はわからん。エラーメッセージをそのまま貼れ。

927 名前:922 :04/04/30 11:11
レジストリの値ですが、
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\
にある8.0とか9.0がバージョンと思うんですが、
これって絶対に8.0から1おきに増加してるものなんでしょうか。


928 名前:デフォルトの名無しさん :04/04/30 11:31
PictureControlを使って配置した画像に透過色を指定して表示するにはどうすればいいのでしょうか?
環境はVC++.Net2003です。
よろしくお願いします。

929 名前:891 :04/04/30 12:05
>>892
遅レスですがありがとうございます。
何もないところとは盲点でした・・・

930 名前:デフォルトの名無しさん :04/04/30 13:01
int A = 255; A = A << 30;
だとAは0x30000000になりますよね?
同じく int A = 255; A = A << 32;
だと A = 0 になるのでしょうか? 255 のままなのですが・・・・・・。

931 名前:デフォルトの名無しさん :04/04/30 13:13
>シフト式の右オペランドが負のとき、または右オペランドが
> (上位変換された) 左オペランドのビット数以上のときの結果は、未定義です。
未定義だから、文句言えないんじゃない?

932 名前:デフォルトの名無しさん :04/04/30 17:44
クラス内にCALLBACKを持つ関数をメンバとして使うことはできませんか?
(__stdcall *)〜に変換できませんというエラーがでます

933 名前:デフォルトの名無しさん :04/04/30 17:48
>>932
ttp://techtips.belution.com/ja/vc/0009/

934 名前:デフォルトの名無しさん :04/04/30 19:47
>>917
ありがとうございました。
なんとか作ってみます。

935 名前:デフォルトの名無しさん :04/04/30 21:33
>>930
>int A = 255; A = A << 30;
>だとAは0x30000000になりますよね?
なりません。

>同じく int A = 255; A = A << 32;
>だと A = 0 になるのでしょうか? 255 のままなのですが・・・・・・。
>931の言うように未定義なので、警告が出るコンパイラもあります。

936 名前:デフォルトの名無しさん :04/04/30 21:42
VC++では必要なDLLを一緒にコンパイルする事は出来ないのでしょうか。

937 名前:デフォルトの名無しさん :04/04/30 21:53
DLLをさらにコンパイルしたいのか。
難問だな。

938 名前:デフォルトの名無しさん :04/04/30 21:54
同じワークスペースに放り込んで
プロジェクト→依存関係

939 名前:936 :04/04/30 22:05
解決しました。
リリース版でコンパイルすればOKなんですね。

940 名前:デフォルトの名無しさん :04/04/30 22:16
なんだってー!!

941 名前:デフォルトの名無しさん :04/04/30 22:29
質問

なぜVC++は単発の.cや.cppファイルをビルドできないのでしょうか?

942 名前:デフォルトの名無しさん :04/04/30 22:37
>>941
用語が違うから。

943 名前:デフォルトの名無しさん :04/05/01 04:30
DAOで新規にレコードを追加したいのですが、
CDaoRecordset *m_dbRecord = new CDaoRecordset(m_DB);
m_dbRecord->AddNew();
m_dbRecord->Update();
とすると、
「インデックスまたは主キーには、Null 値を使用できません。」という
エラーメッセージが表示され、レコードが追加されません。
追加するレコードの各々のフィールドの初期値を設定するには、
どのようにすれば良いでしょうか?


CDaoRecordset *m_dbRecord = new CDaoRecordset(m_DB);
m_dbRecord->AddNew();


m_dbRecord->Update();

944 名前:デフォルトの名無しさん :04/05/01 04:39
SetFieldValue

945 名前:デフォルトの名無しさん :04/05/01 08:11
>>897
> VisualC++.net 2003を使い始めました。
> 拡張子「.c」でC言語を実行したいのですが方法が分かりません。「.cpp」なら普通に実行されるんですが…
> 簡単なことかもしれませんが、教えて下さい。

拡張子が .c のファイルをVCで開いても、
ビルドのボタンが表示されないから困っている、ってことだろ。

空のプロジェクトを作り、新しい項目の追加でファイル名を拡張子まで書きhoge.cとしてやるか、
既存の項目の追加でhoge.cを指定してやればOK。

拡張子を書かなければ、自動的に.cppが付加されてしまう事に注意。


946 名前:デフォルトの名無しさん :04/05/01 08:21
ファイルのコンパイルと
プロジェクトのビルドは
違うからね。


947 名前:デフォルトの名無しさん :04/05/01 11:29
>>945
出来ました。有難うございます。

948 名前:デフォルトの名無しさん :04/05/01 11:42
>>945
すげーよくわかったな(w


949 名前:デフォルトの名無しさん :04/05/01 12:10
1001000101001  (2→10)
↑これの意味わかりますか?

950 名前:デフォルトの名無しさん :04/05/01 12:21
わかりますよ。

951 名前:デフォルトの名無しさん :04/05/01 12:30
>>949
よろしく

952 名前:デフォルトの名無しさん :04/05/01 12:47
じゃーとっとと教えてくださいよ先輩!!

953 名前:デフォルトの名無しさん :04/05/01 12:53
>>949
それ、VC++とどう関係があるのか聞きたい。

954 名前:デフォルトの名無しさん :04/05/01 13:00
>>952
1001000101001(2進) = 4649(10進)
で、ヨロシク

955 名前:デフォルトの名無しさん :04/05/01 13:23
>>954
いやほんと d(゚Д゚)サンクス

956 名前:デフォルトの名無しさん :04/05/01 15:34
>>955
せっかくだから

>>954
100111

くらい書けよ

957 名前:デフォルトの名無しさん :04/05/01 15:34
>>954
あれ?2324じゃないかい?

958 名前:957 :04/05/01 15:36
間違えてた・・・

959 名前:デフォルトの名無しさん :04/05/02 15:01
MFCのTRACEマクロみたいな機能がc++でほしいのですがなんのヘッダをインクルードすればええですか?

960 名前:デフォルトの名無しさん :04/05/02 15:06
>>959
MFCはC++なのでそのまま使え。
MFCを使わない時にもということであればMFCのソースをミロ。

961 名前:デフォルトの名無しさん :04/05/02 15:08
>>959
VS 2003なら TRACE を選択して定義へ移動。 (゚д゚)ウマー

962 名前:デフォルトの名無しさん :04/05/02 23:08
最近Visual C++を使い始めたのですが、覚える言語はCとC++どっちがいいんでしょうか?
できれば二つの違いについても教えてもらえると助かります。

微妙にスレ違いですいません。

963 名前:デフォルトの名無しさん :04/05/02 23:20
せっかくだ。両方やっとけ。

964 名前:デフォルトの名無しさん :04/05/02 23:58
>覚える言語はCとC++どっちがいいんでしょうか

>できれば二つの違いについても教えてもらえると助かります

掲示板で聞く内容ではないと思います。
せっかくのGWなんだし、理解するまで思う存分
書店で立ち読みでもしてきたらいかがでしょう?

965 名前:デフォルトの名無しさん :04/05/03 00:00
とりあえず、cやってから考えろ

cできないのにc++なんてできやしない

966 名前:デフォルトの名無しさん :04/05/03 00:08
>>12
左だよ

967 名前:デフォルトの名無しさん :04/05/03 00:13
>>966 ワラタ

968 名前:デフォルトの名無しさん :04/05/03 00:15
>>966
ワロタ

969 名前:デフォルトの名無しさん :04/05/03 00:45
>>966
ツッコミ遅いよ!何やってんの

970 名前:デフォルトの名無しさん :04/05/03 07:26
>>Part8の567
死ねよ、屑

971 名前:しぃ :04/05/03 08:51
VC++.NET2003はC++の.NET環境が整ってきているのですが、デバッグ実行時の起動が超遅いです。
プロジェクトを新規作成して何もコードを書かずにデバッグ実行を開始しても、フォームが出てくるまで30秒ぐらい待たされます。
デバッグなしの実行ではすぐに出てくるのでデバッガの問題だと思うのですが。
2002の時も「Hello World」がコンソールに出てくるまでやはり30秒ぐらいかかります。
どなたか解決策をご存じないでしょうか?
ちなみに環境はWinXPPro、AthlonMP2000+Dual、メモリ512MBです。
ノート(WinXPHome、PentiumM1.4GHz、メモリ512MB)や職場のPC(Win2k、Pentium4-2GHz、メモリ256MB)でも同様でした。
よろしくお願いします。


972 名前:山本五十六 :04/05/03 10:20
水をさすようですまんが君たちはもうじき失業するよ
これからはC♯の時代なんだから

航空優位時代到来なのに大艦巨砲主義に何時までもこだわるな、ということだw


973 名前:デフォルトの名無しさん :04/05/03 10:21
アフォだなぁ プログラマーの未来なんてどうせ暗いよ。

人件費の関係で、日本のPGはみんな失職。インドとかアジア系の人材ばっかりになるよ。

974 名前:デフォルトの名無しさん :04/05/03 10:25
>>973
釣りですか?

975 名前:デフォルトの名無しさん :04/05/03 10:36
>>973
製造職全般にも言えるね
田舎に帰って無農薬農法でもやってください

976 名前:デフォルトの名無しさん :04/05/03 11:38
VC++.2003で
#include <stdio.h>
int main(void)
{
int a,b,c;
a=4;
b=0;
c=a/b;
printf("%d /%d = %d\n,a,b,c);
return 0;
}
これをビルドすると 「ハンドルされていない例外が発生しました」
と出ます。上のプログラムでintをdoubleにしてa,bを小数にして実行
するとc=1.#INF00と出ます。なぜでしょうか。

977 名前:デフォルトの名無しさん :04/05/03 11:47
>>976
ゼロ除算の例外
INFはインフィニティ

978 名前:デフォルトの名無しさん :04/05/03 11:52
それ以前にコンパイルできないような気がするんだが(w

979 名前:デフォルトの名無しさん :04/05/03 12:04
>>978
整数ではコンパイルできませんが、小数ではできました。

980 名前:デフォルトの名無しさん :04/05/03 12:15
あれっひょっとしてマジ質問か?

漏れはVC++.2003は知らんのだがそもそも標準入出力(コンソール相当)あるのか?
(つまりprintf/stdio.hは使えるのか?) > 他の人

>>979
まずタイプミスがないかよく確認してから実行してみてくれ。


981 名前:デフォルトの名無しさん :04/05/03 12:27
>>980
あるに決まってるだろ。
もしかして知らない物の回答をしようとしているのか?

982 名前:デフォルトの名無しさん :04/05/03 12:36
そんな怒るほどのことか?会社でVSSつかっとるがこいつで<stdio.h>使ったことないんだよ。
分かっている香具師がはよ答え路や。


983 名前:デフォルトの名無しさん :04/05/03 13:21
>>976に貼られたソースがコンパイルできないのは明白だが、
実行した結果に付いて訊いているのだし、
それについても答は>977で出ている。

>979はコンパイルと実行の区別がついていない発言なので、
>980は質問は別としてレスは的外れ。

>>980
VC++.NETは.NETアプリしか作れないわけじゃないよ。

984 名前:デフォルトの名無しさん :04/05/03 13:33
>>983
>979 整数ではコンパイルできませんが、小数ではできました。

これはどうなる? >>977は不完全だ。

985 名前:デフォルトの名無しさん :04/05/03 14:11
分割コンパイルについて質問させてください。
いくつかのクラスを作っていて、それぞれクラスごとにヘッダとソースがあります。
クラスの中でお互いを引数とかメンバで持っているのでどこかで#includeをしないと
いけないと思うんですが、お互いに呼ばれあっているので一方を先に#includeすると
他方がエラーを起こし、逆にしても結局はエラーが起きます。
あまり複雑なプログラムを組んだことがないので混乱してきました。
分割コンパイルのセオリーのようなものがありましたら、ぜひ教えてください。
よろしくお願いします。

環境:VC++6.0

986 名前:976 :04/05/03 16:00
>976 a,bを小数にして
というのは例えばa=6.0,b=0.0にするということです。

987 名前:デフォルトの名無しさん :04/05/03 16:22
>>985
クラス名を使いたいなら名前だけ宣言することでOKだよ。
class Foo; // こんなかんじ
class Bar;
相互に参照するような相関度の高いクラスは一つのヘッダに
まとめるとか、クラス毎のヘッダ群をまとめるヘッダを作るとか、
いろいろ工夫できるのではないかと。

どこかの偉い人が作ったセオリーとかは知らないなぁ。
きっといろいろあるんだろうけど…。

988 名前:987 :04/05/03 16:29
蛇足かもしれないけどインクルードガードはよく使うので
知らなかったら検索して。

989 名前:デフォルトの名無しさん :04/05/03 16:35
質問です。

MFCで自分で考えたイベントをDLLで発生させ、別の場所でそれを受信するようなのを作りたいのですが
どうすればいいのでしょうか?

990 名前:985 :04/05/03 16:48
>>987
返答ありがとうございます。
class Hoge;をヘッダに記したところ随分エラーの数は減りました。
インクルードガードも取り入れました。

しかし、肝心のエラーが消えません。クラスが未定義となってしまいます。
クラスを定義するヘッダの中で、そのクラスに別のクラスの変数メンバを
加えようとしてるとこで起きてしまいます。
メインのソースファイルの方でそのヘッダより前にクラスは宣言してるはずなんですが…。

991 名前:デフォルトの名無しさん :04/05/03 17:05
まさかとは思うが、
class A { class B b};
class B { class A a};
みたいなことはやってねーだろーな。

992 名前:985 :04/05/03 17:13
>>991
それはやってません。
class A{class B b};
class B{func(class A *a)};
こんな感じです。

ちょっと逸れますが、
991の用にやってはいけない理由というのを考えてみたのですが、思いつきません。
よければ、教えてもらいたいのですが…。

993 名前:デフォルトの名無しさん :04/05/03 18:54
その場合、
A.h: include B.h class A { B b; };
B.h class B{ func(class A*a); };
B.cpp: include A.h, B.h B::func( A*a){}
ってするのは判るよな?

994 名前:デフォルトの名無しさん :04/05/03 19:49
記念カキコ v(^-^*)

995 名前: ◆Manna2uCLg :04/05/03 20:40
残り少ねーじゃねーか。

ってことで、次スレ立ててくる。

996 名前: ◆Manna2uCLg :04/05/03 20:59
ごめん、スレ立て規制されてた…
誰かたのんます…

ちなみに当方 plala…
……あー。

997 名前:デフォルトの名無しさん :04/05/03 21:05
★初心者にVisual C++を教えるスレ★ Part12
http://pc5.2ch.net/test/read.cgi/tech/1083585833/

ほい

998 名前:デフォルトの名無しさん :04/05/03 23:04
こっそり1000でもとってよっと。

999 名前:デフォルトの名無しさん :04/05/03 23:06
1000

1000 名前:デフォルトの名無しさん :04/05/03 23:09
999!


■過去ログ置き場に戻る■ 1- 前250 次250 最新50
DAT2HTML 0.33f Converted.