- 1 名前:デフォルトの名無しさん [2008/03/30(日) 01:50:26 ]
- エスケープシーケンスやWin32APIなどの環境依存なものでもOK。
ただしその場合、質問者は必ず環境を書きましょう。 ※sage禁止です(と代々スレに書いてありますが自己判断で)。 【前スレ】 【初心者歓迎】C/C++室 Ver.50【環境依存OK】 pc11.2ch.net/test/read.cgi/tech/1204124447/ 【アップローダー】(質問が長い時はココ使うと便利) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
- 792 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 11:15:46 ]
- >>791
argv そのまま渡せるように引数も同じ型にしとけよ。
- 793 名前:デフォルトの名無しさん [2008/04/18(金) 11:27:51 ]
- >>792
argvをそのまま渡すようにするには、ユーザ関数の仮引数と呼び出す際の実引数は何にすればいいのでしょう?
- 794 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 11:30:16 ]
- >>793 仮引数は main にある argv と「同じ型」、実引数は argv 。これでいいか?
- 795 名前:デフォルトの名無しさん [2008/04/18(金) 11:48:44 ]
- >>794
分かりました、ありがとうございました。
- 796 名前:デフォルトの名無しさん [2008/04/18(金) 13:36:50 ]
- >>788
エラーとかじゃなくて単に何も表示されない?
- 797 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 13:39:11 ]
- ファイルの置き場所ミスってるだけじゃねーの?
- 798 名前:788 [2008/04/18(金) 15:50:11 ]
- VC++2008 Express Editionでdebugモードでコンパイルし、
データファイルaaa.datをdebugフォルダに入れて実行ファイル を実行すると正常に実行されます。ですが、統合環境では何も 表示されないです。 Projects\test\test (testは私がつけたプロジェクト 名のフォルダ) というフォルダにデータファイルを置 くと統合環境ではうまくいくようです。しかし、こん なこと最初はわかんないよ。
- 799 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 15:55:53 ]
- >>798
フルパスでファイルを扱うのでなければ、カレント ディレクトリをちゃんと意識するようにしないと。
- 800 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 16:00:30 ]
- is_openでちゃんと開けたか確認したほうがいいよ
- 801 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 16:29:49 ]
- open使わずに
std::ifstream fin("..."); てやったほうがいいよ close後何も処理しないのならcloseも不要だよ
- 802 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 18:12:43 ]
- C++やろうと思うんですけど、オススメの教本教えてください
Cとjavaは一応できます
- 803 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 18:15:06 ]
- boostのソースコード(無料)(偏差値70)
- 804 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 19:10:22 ]
- メモリは並列にアクセスできますか? 例えばHDDだと2台あればパフォーマンス落ちずに同時アクセスできますが
- 805 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 19:17:44 ]
- >>804
NUMAとかそーいうキーワードで調べてみるといいと思う。
- 806 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 19:38:09 ]
- >>777
ありがとう。評価ボード調べてみたらくそ高けぇw ごめんなさい勉強用程度なら1万程度もあれば揃うだろうとなめてました
- 807 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 19:42:52 ]
- >>806
こんなのから始めた方がいいよ。 ttp://hijiri3.s65.xrea.com/sorekore/develop/pic/00_start.htm
- 808 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 19:51:44 ]
- >>807
d これは面白そう もうちょっとググって組み込みのこと勉強してきます
- 809 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 20:07:21 ]
- >>805 トンクス!
- 810 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 20:32:22 ]
- >>785
提示されたコードをコンパイルしましたが、特に異状はないと思います。 環境とコンパイルオプションを教えてください。 当方が確認した環境は WindowsXP, コンパイラはgcc3.4.4(cygwin)です。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/6272.txt
- 811 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 22:15:10 ]
- >>798
[プロジェクト]-[プロパティ]-[構成プロパティ]-[デバッグ]-[作業ディレクトリ]
- 812 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 22:41:28 ]
- #include <stdint.h> はどの環境でも使えますか?
とブーストとかSTL portとか入れればどれでも使えますか? 32bit環境で、64bit整数のビット演算、掛け算の速度をかなり速いです 使い物になるので使いたいのですが互換性はなかなかあるんですか
- 813 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 22:42:11 ]
- 文書が色々とおかしいです
エスパーでおねがいします
- 814 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 22:55:18 ]
- VC2008で対応していなかった為、stdint.h使うのをやめることにしました
- 815 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 22:56:44 ]
- わかりました
がんばってください
- 816 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 22:58:30 ]
- >>812
> #include <stdint.h> はどの環境でも使えますか? いいえ。 > とブーストとかSTL portとか入れればどれでも使えますか? いいえ。 > 32bit環境で、64bit整数のビット演算、掛け算の速度をかなり速いです いいえ。 > 使い物になるので使いたいのですが互換性はなかなかあるんですか いいえ。
- 817 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 23:08:19 ]
- 日本語学びたての外国人か
コンピューターにものすごい興味がある赤ん坊のどちらかだな。
- 818 名前:デフォルトの名無しさん [2008/04/18(金) 23:22:53 ]
- 外国人の人だと思うので、添削してみました。頑張ってね。
初心者なのですが、いくつか質問させてください。 #include <stdint.h>はどの環境でも使えますか? boostとかSTL portとかは、インストールすれば使えますか? 32bit環境で、64bit整数のビット演算、掛け算がかなり速くできて、 使い物になりそうなので使いたいのですが、互換性についてはどうでしょうか?
- 819 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 23:23:06 ]
- std::vector<std::string> vtSource; を UTF16 に変換して std::vector<std::wstring> vtDest; に保存したいと思っています.
// string >> wstring 変換関数(中身はダミー) std::wstring A2WString(const std::string& strSource)) { return std::wstring(L"out"); } この変換関数での変換は以下のコードでできました. std::vector<std::string> vtSource; std::vector<std::wstring> vtDest; vtSource.push_back( "AbC" ); std::transform( vtSource.begin(), vtSource.end(), std::inserter( vtDest, vtDest.end() ), A2WString ); しかし,変換関数にデフォルト引数があるとコンパイルエラーになりました. std::wstring A2WString2(const std::string& strSource, int i=0)//デフォルト引数がある { return std::wstring(L"out"); } transform 第4引数で bind2nd や ptr_fun を使用すればいいような気がするんですが,どのように書けばいいんでしょうか? std::transform( vtSource.begin(), vtSource.end(), std::inserter( vtDest, vtDest.end() ), std::bind2nd( std::ptr_fun(A2WString2), 0) );//コンパイルエラー Window2000 Visual C++ 2005 express edition
- 820 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 23:26:01 ]
- >>812
C++なら、Boostを入れると<boost/cstdint.hpp>が使える。 名前空間boostに入っていること以外はだいたいC99の<stdint.h>と同じ。
- 821 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 23:27:47 ]
- >>819
いったん別の関数を挟めばいいはず。 inline std::wstring A2WStringHelper(const std::string& strSource) { return A2WString(strSource); } こういうものを作って、std::transformにはこれを渡す。
- 822 名前:デフォルトの名無しさん mailto:sage [2008/04/18(金) 23:54:40 ]
- スタティックテキストのプロパティCaptionを変更するにはどうすればいいんですか?
IDC_STATIC.Caption("aaa"); で動かないんですけど
- 823 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:01:09 ]
- IDC_STATIC.Caption = "aaa";
GetDlgItem(IDC_STATIC)->Caption = "aaa"; これでも動きません
- 824 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:09:19 ]
- >>822
IDC_STATICは言わばワイルドカードなので、 キャプションを変えたいスタティックテキストに個別のIDを割り当てる必要があります。
- 825 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:10:34 ]
- つーか、そもそも書き方も判ってなくてコンパイルも通らないならエラーメッセージを張れと。
- 826 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:22:56 ]
- ありがとうございます。名前を付けました
GetDlgItem(IDC_STATICTIME)->Caption = "aaa" error C2039: 'Caption' : 'CWnd' のメンバではありません。 となります
- 827 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:27:11 ]
- IDC_STATICTIME->Caption = "aaa"
これだと error C2227: '->Caption' : 左側がクラス、構造体、共用体、ジェネリック型へのポインタではありません。 こういうエラーになります。
- 828 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:27:43 ]
- Captionなんて無いよ・・・とエラーが教えてくれてるじゃん
なんでそんなにCaption大好きなの? GetDlgItem(IDC_STATICIME)->SetWindowText("aaa");
- 829 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:30:40 ]
- ありがとうございます
別に好きなわけじゃないんです VBの時はこうやっていたので プロパティの項目で設定できないのならVC++で項目の意味はあるんですか? 全部のプロパティの設定方法を調べなきゃいけないんでしょうか?
- 830 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:35:46 ]
- プロパティ?ダイアログの?
あんなのは飾りだ。
- 831 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:39:07 ]
- 意味があるとしたら、設計時に入れれば、コーディングしなくて良い事ぐらいかな?
VCは他もみんなこんな感じだから、VBからだと慣れるしかないな。 プロパティのVisible項目→コーディング時はShowWindow();
- 832 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:44:01 ]
- OK覚悟はできたwwww
- 833 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 00:55:43 ]
- C#を一通りやった者ですが、CよりC++の方が始め易いでしょうか?
- 834 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 01:08:42 ]
- C# からなら C は不便に感じると思う。
C++ のがいいかと。
- 835 名前:819 mailto:sage [2008/04/19(土) 01:46:47 ]
- >>821 ありがとう.とりあえずそうやればできました.
ただ,何でこれは通らないんでしょうか? std::transform( vtSource.begin(), vtSource.end(), std::inserter( vtDest, vtDest.end() ), std::bind2nd( std::ptr_fun(A2WString2), 0) ); A2WString2() の第一引数の参照型をやめたらこれでもコンパイルできましたが, もしよろしければどなたかご教示願います…. //引数の参照型をやめる std::wstring A2WString2(const std::string strSource, int i=0) { return std::wsting(L"out") }
- 836 名前:デフォルトの名無しさん [2008/04/19(土) 05:07:02 ]
- JavaとかC#から始めた人はCやC++の世界には入ってこないでください。
- 837 名前:デフォルトの名無しさん [2008/04/19(土) 07:57:16 ]
- >>836
どうして?
- 838 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 09:33:00 ]
- ガベージコレクタは便利かもしれないが、その便利さゆえに何か重要なことを失くしているような気がする。
- 839 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 09:33:54 ]
- 「JAVAスクールの危険」ってはなし?
- 840 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 09:48:02 ]
- Java はアレだが、C# はまだマシだと思うけどな。まあ。
- 841 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 10:27:27 ]
- >>835
それは有名な参照の参照問題 詳細はSTL バインダで検索して一番上あたりがそのものズバリだと思う 解決策だけ抜きだすとboostのfunctional.hppのboost::bind2ndを使う さらにptr_funを使わずにboost::bind2nd(A2WString2)と書けるところも利点だ
- 842 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 11:43:18 ]
- >>837
温室育ちが軍隊に入ったら周りが迷惑するだろ
- 843 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 11:48:42 ]
- 軍隊という表現は語弊があるな
せめてど田舎とか電気が通ってないとかそういう表現にしないと
- 844 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 13:06:49 ]
- その表現もかなりニュアンス違うな。
まぁ、無理して比喩を使う必要はない場面だと思う。
- 845 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 14:05:31 ]
- 2chにゆとりが入って来たでおk
- 846 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 14:06:52 ]
- >>845
いまいちだな
- 847 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 14:58:24 ]
- オートマ車しか乗ったことが無い人が、
マニュアル車に乗る感じとか。 でもC/C++をちゃんと理解して使い始めるなら、良いと思う。 理解するフェーズで挫折する人は、諦めてもらって、 理解するフェーズを無視して使い始める人は氏ねば良いと思うよ。
- 848 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 15:10:55 ]
- 1速のままで法定速度維持してエンジン壊すってか。
- 849 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 15:20:18 ]
- 「郷に入っては郷に従え」でいいんじゃないかと
- 850 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 15:21:01 ]
- > 理解するフェーズを無視して使い始める人は氏ねば良いと思うよ。
多言語から移ってきた人の3割くらいはこれかな・・・?
- 851 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 15:27:51 ]
- 映画と小説の共存が可能なように美麗な3Dグラフィックゲームと想像力をかきたてる2Dのドット絵ゲームというのは共存が可能だと思うのだがいかがなものか
- 852 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 15:31:57 ]
- ドット絵すらないroguelikeもよろしく
- 853 名前:デフォルトの名無しさん mailto:sage [2008/04/19(土) 15:55:49 ]
- 文字は高尚なドット絵だよ!
- 854 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 10:27:45 ]
- ぷァ
- 855 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 10:48:12 ]
- *nixのフレームバッファコンソール上でハードウェアアクセラレーションを使って描画とかしたい
- 856 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 11:39:26 ]
- すみません 圧縮・解凍DLLを利用して、どの形式のファイルを渡されても
同一の方法で展開することのできるライブラリってありませんか? ファイルをチェックして適切なDLLへ渡すやつです。
- 857 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:11:41 ]
- >ファイルをチェックして
ファイル名で?ファイルの中身で?
- 858 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:12:58 ]
- ファイルの中身です EXEでも解凍できるやつもあります そういうのも展開したいです
- 859 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:20:41 ]
- とりあえずは 拡張子判別DLL(ググって) と 統合アーカイバ の組み合わせかな。
exeは知らない。アーカイブ本体をexe末端に付けてるか、 リソースとして持ってるか、とかの方式で変わってくるだろうし。
- 860 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:25:42 ]
- 対応形式が多いのはXacRett.dllかな
- 861 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:25:40 ]
- それらを自動でやってくれるのはないかと…
- 862 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 12:28:04 ]
- サンクス
- 863 名前:ミミ [2008/04/20(日) 13:10:19 ]
- Visual C++ でデバッグバージョンのバイナリを作るときって、
みなさんは名前を変えますか?どんな方法にしてますか? [方法1] Debug も Release も同じファイル名にして、ビルドすると上書きされるようにする。 [方法2] Debug バージョンには _d のようなサフィックスを付ける。 some_d.exe hoge_d.lib など。 [方法3] Debug と Release で出力フォルダを分ける。 bin/Debug/some.exe bin/Release/some.exe など。
- 864 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 13:23:48 ]
- デフォルトは方法3だよな。
単独で動かす時はそれで十分やね。 他のアプリから利用する必要がある場合は方法2じゃないと都合が悪い。 方法1は論外っすね。
- 865 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 14:40:32 ]
- >>858
そういうものがあるとしたら、そういうフリーのソフトが公開されている筈だよな。 そういう公開ソフトはないのだから、当然そういうDLLはない。 まぁ、>859にある「統合アーカイバ・プロジェクト」辺りを見てこいと。
- 866 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 15:20:46 ]
- XacRettで解決したんですけど…
- 867 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 17:28:14 ]
- 最近ゲームのプログラムいじってたらprint系で浮動小数が出力できなくなってしまったんだが、
同じようになったことある人いる?いたら解決策とか教えて欲しいです。 症状としては、%fを含むprint系の関数(wsprintfとかvfprintf)を実行すると 「問題が発生したため〜」っていうおなじみのダイアログが出てきて落ちちゃうんです。
- 868 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 17:30:03 ]
- 言語再インストール
- 869 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:34:25 ]
- ウィンドウを作成して、そこにビットマップを表示させたりするDLLを作ってるんだが、
外部からもらったバイナリBMPデータをどういじればいいのか分からん。。。 //--- PAINTSTRUCT psPaint; HDC hWndDC; HDC hMemDC; HBITMAP hBitmap; HGDIOBJ hGdiObj; hWndDC = BeginPaint(g_hWnd, &psPaint); hMemDC = CreateCompatibleDC(GetDC(g_hWnd)); hBitmap = CreateComptibleBitmap(hMemDC, 100, 100); hGdiObj = SelectObject(hMemDC, hBitmap); /* ここでバイナリをhBitmapに設定したい */ BitBlt(hWndDC, 0, 0, 100, 100, hMemDC, 0, 0, SRCCOPY); //--- ビットマップバイナリをどうにかしてhBitmapに突っ込んでやれば良いのかと思ってるんだけど、 方法がわからん… そもそも考え方が間違ってる?
- 870 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:45:57 ]
- >>869
SetDIBits
- 871 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 18:59:48 ]
- CreateDIBitmap
- 872 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:08:32 ]
- >>867
再現ソースとエラーを張れと何度いったことか
- 873 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 19:46:11 ]
- >>872
再現コードの作成はちょっと全体の量も多いし見当もつかないので難しいです・・・。 関係あるとしたらどんなことが考えられるでしょうか?ロケールとか?
- 874 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 20:00:57 ]
- >>873
スタックを壊したとか関数テーブルを壊したとか 多分バッファオーバーフローか未初期化ポインタを使って アクセスしてはいけないメモリを壊した可能性が高い
- 875 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 20:01:01 ]
- だからエラーメッセージ張れつ〜うの。テンプレに書いてあるでしょ
呼び出し規約とかランタイムとかリンクされるライブラリとか なんかプロジェクトの設定いじったでしょ。それを直せばいい
- 876 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 20:45:31 ]
- >>863
デバッグ版はインストール先のフォルダ。 リリース版はインストーラ作成のフォルダ。
- 877 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 21:22:45 ]
- >>874-875
レスありがとうございます。以前できていたところがいじってないのに 急になったので875さんの臭いかも知れないけど、気づいたらなってしまってました・・・ BCCでやっててエラーメッセージを取得できる部分が見当たりません・・・。 こういう時ってどうやってメッセージを受け取るんでしょう?すいませんアホで・・
- 878 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 21:58:31 ]
- 浮動小数とか言ってる時点でキミがアホなのはみんな分かってるよ
- 879 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 22:11:33 ]
- これでまったく関係ない場所でゼロ除算で落ちてたとかだとウケるな
- 880 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 22:24:46 ]
- あっwsprintfかw
printf系じゃないから%fとか無理 sprintfつかえ
- 881 名前:デフォルトの名無しさん mailto:sage [2008/04/20(日) 22:29:26 ]
- snprintfとかswprintfでもいいよ
- 882 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 01:09:03 ]
- >>870
>>871 さんくす。 CreateDIBitmap使ってやってみたらいけた。 表示用のビットマップはCreateCompatibleBitmapで作って、 外部からもらったバイナリを描画するビットマップをCreateDIBitmapで作成 BitBltで転送して実装できたよ ありがとう
- 883 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 20:49:40 ]
- >>879確実にvsprintfで落ちてました。
>>880-881ダメでした。あきらめます。 親切にレスしてくださった皆様、ありがとうございました
- 884 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:15:55 ]
- null = new int[10]
で確保した領域はどこに存在するの? delete[]しなければ、この確保した領域はプログラムが終了してもずっとそこに存在したままになるの?
- 885 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:18:33 ]
- >>884
ヒープ領域のどこか 終了したらちゃんと解放される 一部されないOSもなくはない
- 886 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:38:02 ]
- コンパイル時にtype_infoみたいな感じで静的にクラス名の文字列を取得できる方法ってありますか?
テンプレートクラスで例外を投げる時に使いたいんですが・・・
- 887 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 21:52:34 ]
- >>886
boostのこの辺のが役に立つかもしれない ttp://www.kmonos.net/alang/boost/classes/enable_if.html
- 888 名前:デフォルトの名無しさん mailto:sage [2008/04/21(月) 22:10:44 ]
- boostって本当にすごいね・・・そんなのも判定できるとは
でも型名の取得は厳しいのかな・・・
- 889 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 01:38:20 ]
- やっぱりboostでtypeofってのがあって、それで
型名は取得できるのだけど、staticな処理じゃないんだよね。 なのでその用途だとtypeid使うのとあまり変わりない。 ttp://www.kmonos.net/alang/boost/classes/typeof.html
- 890 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 03:19:09 ]
- STLをはじめ、テンプレートをよく使いなさい。
型の完全名がカオスになって諦めがつくから。
- 891 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 04:20:31 ]
- void CtimerDlg::OnBnClickedButton2()
{ // TODO: ここにコントロール通知ハンドラ コードを追加します。 msgdlg aaae = new msgdlg(); aaae.Create(IDD_DIALOG1, this); aaae.ShowWindow(SW_SHOW); } このボタンを押すとダイアログウィンドウが一瞬表示されたようにみえるのですが、表示されません。 SW_SHOWがいけないんでしょうか?
- 892 名前:デフォルトの名無しさん mailto:sage [2008/04/22(火) 07:09:45 ]
- それコンパイル通るの?
|

|