C++Builder相談室 Part10
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
NGNG過去スレ・関連サイトは>>2-5あたり。
0140デフォルトの名無しさん
NGNG0141デフォルトの名無しさん
NGNGHDDも無駄に大容量化してるし、ブロードバンドも普及し、
リムーバブルなメディアも数百円程度の時代にコンパクトな実行ファイルなんて
なんの意味があるの?
0142デフォルトの名無しさん
NGNGTListとかTStringListとかAnsiStringとかあるし。
0143デフォルトの名無しさん
NGNG禿同
組み込みならいざ知らず、PC向けのアプリケーションなら
実行速度に問題がなければサイズなんて何の意味もない
0144デフォルトの名無しさん
NGNGVCLに渡す時に一次オブジェクト生成するから時間かかっちゃうよ?
0145デフォルトの名無しさん
NGNG情報源は?VCLのソースのどの部分みて言ってんの?
生兵法は怪我の元やで、しかし!
0146デフォルトの名無しさん
NGNGAnsiStringのソースはdstring.cppだけど、
そんなもの見なくてもstd::string->const char*->AnsiStringの変換が必要になるから、
AnsiStringの一時オブジェクトが生成されるのは分かるよね?
0147デフォルトの名無しさん
NGNGLStrFromPCharを呼んでるよね。これも余計な時間がかかる原因。
0148デフォルトの名無しさん
NGNGそもそもRAD自体が富豪的プログラミングの典型だからね。
速いプログラムが書きたければBCBなんて使うべきでは無いよ。
0149デフォルトの名無しさん
NGNGテカプレートだから型ごとにコードが膨らんでくし。
0150デフォルトの名無しさん
NGNG0151デフォルトの名無しさん
NGNG0152デフォルトの名無しさん
NGNGnasmでも使ってろよ
0153デフォルトの名無しさん
NGNGそんなに気になるならVRAMに直接書き込めばイイ
0154デフォルトの名無しさん
NGNGはぁ、?VRAM?
なに言ってんの、このボンクラは?
0155デフォルトの名無しさん
NGNG漏れの職場はほぼVC++、漏れも最初は抵抗あったが
慣れてくるとBCBのポトペタ環境なんてどうでもよくなった。
0156デフォルトの名無しさん
NGNG0157デフォルトの名無しさん
NGNG会社ドメインのメルアドでBuilderMLにメールを出すことと
仕事でC++Builderを使うことにどんな因果関係があるの?
0158デフォルトの名無しさん
NGNG大抵質問内容が業務用アプリに関することが多いんじゃない?
〜というものを開発しているのですが・・・とか
0159デフォルトの名無しさん
NGNGノシ
0160デフォルトの名無しさん
NGNG俺もそうだよ。少数派の一人かもしれんが。
組み込み用の処理を、Builderで書いたテスト環境に
放り込むとかよくやるんでね。
>>105
シフト、コントロール両キーを押したままBuilder起動で
スプラッシュが変わるよ。
Builder5では某ジラの絵(数種類あり)になって
おまけに鳴き声まで出るので、最初偶然見たときはPCが
病原菌に感染したかと焦ったな。
0161デフォルトの名無しさん
NGNGBCB5の某ジラは見たことあるが
BCB6は見たことないなぁ。
ちなみにShift+Ctrlでは出なかった。>BCB6
0162デフォルトの名無しさん
NGNGスマソ。BCB6ではShift+Ctrl+Alt起動だったかな?
6は手元にないのでうろ覚え。
0163デフォルトの名無しさん
NGNGあー、ごめん。BCB6もShift+Ctrlでヲケだ。
オレの押すタイミングが悪かっただけだ。
スマン。
あと、BCB6でもバージョン情報で
alt+"gungla"
も生きてる模様。
0164デフォルトの名無しさん
NGNGキーボードのウィンドウにフォーカスを移すことなく、入力イベントだけ受け取るようなプ
ログラムは可能なのでしょうか?
0165デフォルトの名無しさん
NGNG0166デフォルトの名無しさん
NGNGコンポーネントを派生とか組み合わせてキーボードコンポーネントを自作するのがデフォでしょ。
0167デフォルトの名無しさん
NGNGボタンを配置しなくてFormのCanvasにキー描画しないといけないぽいけど。
Win標準のソフトウェアキーボードってそうなってんのかな?
0168デフォルトの名無しさん
NGNGどうしたらいいですか?
ttp://www.geocities.co.jp/SiliconValley/4805/bcbtips/bcbtips002.htm
0169デフォルトの名無しさん
NGNGWINAPIのヘルプ見るとわかるけど、CreateMutexやOpenMutexに使う文字列に円マークは使えない。
Application->ExeName.c_str() を適当な文字列(ユニークな)に変更すればうまくいくと思う。
0170デフォルトの名無しさん
NGNG0171デフォルトの名無しさん
NGNG0172デフォルトの名無しさん
NGNGReleaseMutexは普通はしないし(アプリ終了時に勝手に開放される)、
OpenMutexせずに直接CreateMutexで確かめるのが普通。
そうしないとタイミングによっては二重起動しちゃうから。
0173デフォルトの名無しさん
NGNG0174デフォルトの名無しさん
NGNG画面に貼るだけで良いし、
2度目の起動を止めるだけでなくさらに既に起動しているプログラムをアクティブにしてくれる。
0175デフォルトの名無しさん
NGNGありゃ、そうなんですか、有難うございます。
0176デフォルトの名無しさん
NGNGC++BuilderのPersonal版を買おうかな?と思っていますが、
このPersonal版では、TCP/IP関連のコンポーネントは利用できるのでしょうか?
なんでも、TServerSocket,TClientSocket などがあるようなのですが……。
0177デフォルトの名無しさん
NGNG0178デフォルトの名無しさん
NGNG0179デフォルトの名無しさん
NGNGCaptionを「-」にする
0180デフォルトの名無しさん
NGNGDOS窓ごと終了してしまうのってなんとかならない?
エクスプローラーからの起動ならDOS窓残ってくれるんだけど。
0181180
NGNGO DOSからの起動
0182デフォルトの名無しさん
NGNGとりあえずプログラム終了時にDOS窓ごと消えるのはしょうがないと思う
なので、プログラム終了前にキー入力待ちにすれば?
0183デフォルトの名無しさん
NGNGDOS窓から実行する
0185リア工
NGNGif(SaveDialog1->Execute()){
if (FileExists(SaveDialog1->FileName)){
if(MessageDlg("同じファイル名が存在します。\n上書きしますか?",
mtConfirmation,TMsgDlgButtons() << mbYes << mbCancel, 0) == mrYes){
Memo1->Lines->SaveToFile(SaveDialog1->FileName);
}
}
else{
Memo1->Lines->SaveToFile(SaveDialog1->FileName);
}
}
0186デフォルトの名無しさん
NGNG上書き確認したいなら、SaveDialog1->OptionsのofOverwritePromptをtrueにしておけばいい。
0188デフォルトの名無しさん
NGNGはじめてのC++のソースサンプルを
C++Builderでコンパイル&実行したいんです。
どうすれば出来ますか?
0189リア工
NGNG0190デフォルトの名無しさん
NGNGフォームの真ん中にボタンを貼り付ける。
そのボタンをダブルクリックするとUnit1.cppに飛ぶから
その中に以下の文を書き込んで実行。
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Application->MessageBoxA("氏ね","氏ね",MB_OK);
}
0191デフォルトの名無しさん
NGNG0193188
NGNGDOS窓がすぐ消えて結果が見えない、
作成したexeファイルもすぐ消える
結果を見るためにはどうすればよいのでしょうか?
0194デフォルトの名無しさん
NGNG>>180から始まるレスを読みなさい。
ってか質問する前にざっと過去ログに目を通しなさい。
>作成したexeファイルもすぐ消える
そら嘘だろ。
0195デフォルトの名無しさん
NGNG>>194さん、ありがとうございます
0196デフォルトの名無しさん
NGNG使った方が良いかもしれないです。
ttp://www.borland.co.jp/cppbuilder/freecompiler/
「はじめてのC++」は、あくまで言語そのものの解説書で、CUIベースでの
解説なので、C++ Builderでそのまま試すには向いていないと思います。
もし、C++言語の習得だけが目的なのではなく、Builderを使いこなしたい
というのであれば、Builder専用の解説書を買ってくることをお勧めします。
0197デフォルトの名無しさん
NGNG別にBCB入ってるならわざわざ入れんでも・・
まあ、コンソールベースでの練習ならIDE使わずに直接bcc32.exe叩いた方が早い。
0198デフォルトの名無しさん
NGNGなんとなく、気になったのですが、
VCと比べるとコンパイルが遅いと思うのですが
VC並みに速くコンパイルする方法はあるのでしょうか?
0199デフォルトの名無しさん
NGNG0200デフォルトの名無しさん
NGNGBCB6はコンパイル遅いよね。
0201デフォルトの名無しさん
NGNGなるほど、ですね。マシンのせいかもしれませんが、ちょっとソースが増えると
あっという間に5分ぐらい平気でかかってくれますね。(´・ω・`)
作り方に問題があるかもしれません。
>>199
使わないで出来れば良いんですが、使わざるを得ないもので、トホホ・・・
0202デフォルトの名無しさん
NGNG0203デフォルトの名無しさん
NGNGincludeは一旦展開されるみたい。
それとか、ActiveXの取り込みヘッダーなんかに巨大なものがあったり。
コンパイル状況表示させて何万行に展開されるか行数見てみたら?
メモリを増やすと良いかも。
0204デフォルトの名無しさん
NGNG取り込みにえらい時間かかるなぁと思ったら、18MBぐらいのヘッダが出来てた事あってビビッタ。
0205デフォルトの名無しさん
NGNGプリコンパイルヘッダはちゃんと有効活用してるか?
STLとかboostとか不変のActiveXのヘッダとかはちゃんとプリコンパイルヘッダに入るようにしろよ。
それとpimplとかちゃんと使えよ。
0206デフォルトの名無しさん
NGNG0207デフォルトの名無しさん
NGNG0208デフォルトの名無しさん
NGNG0209デフォルトの名無しさん
NGNG0210デフォルトの名無しさん
NGNG0211デフォルトの名無しさん
NGNGTryStrToInt
0212デフォルトの名無しさん
NGNG0213デフォルトの名無しさん
NGNG0215デフォルトの名無しさん
NGNG#hdrstopより上は、全ソースで同じにしないと複数回プリコンパイルヘッダが作成されてしまい遅い。
プロジェクトソースも忘れずに…。
0216デフォルトの名無しさん
NGNG知り合いの息子がCを覚えたいというのでCBuilderを勧めてあげようと思うのですが
おすすめの書籍ってどんな感じでしょ?
しばらくはCのお勉強なので、CBuilderに関してはエディット、コンパイル、ランとごく簡単な
コンポーネントの使い方が判ればいいのですが。
C言語のテキストは 「はじめてのC」を考えています。
CBuilder本は C++Builder 6コンポーネント活用ガイド&実践プログラミングVol.2 でOKですか?
そのほかにお薦めがあればお願いします。
学生なので出来れば各1冊で当分使える本が希望です。
0217デフォルトの名無しさん
NGNG単にCの勉強だけしたいならBCC5.5.1なりVCTk2003なりのコンパイラだけあれば十分な気が‥‥
BCBはDel互換こ関係で独自の方言や縛りも結構あるし。
0218デフォルトの名無しさん
NGNG初心者には実行形式がないときついと思うが・・・
0219216
NGNGBCCってWindowsからDOSのアプリ作れるんでしたっけ?
OWLでソフト作りしていたことはあるのですが、当然Windowsでしたし。
Windowsの環境から void main( void ) {} から走るソフトが作れるならそれが
当然一番よいのですが。でもそうするとDOS窓で実行結果を見るのか。。。
DOSアプリでなければOWLとかMFCとかが必須ですよね?それは絶対無理ほ
DOSの環境でエディット・コンパイルなどという苦行は勧められないし。。。
217さんがおっしゃったのはどんなイメージです?
0220デフォルトの名無しさん
NGNG0221デフォルトの名無しさん
NGNG0222デフォルトの名無しさん
NGNG0223デフォルトの名無しさん
NGNGDOSじゃなくてWin32コンソールアプリなら作れる。というかスイッチ付けないとコンソールアプリとしてビルドする。
ちなみにBCBでもDOSアプリは作れない。ちなみに現行バージョンにはOWLは付いてこない。
WindowsのGUIアプリまで作りたいならBCBのほうがいいとは思うが。
勘違いしてる可能性があるので行っておくがBCC5.5.1はC++Builder5のコンパイラ+周辺ツール。
当然Win32環境専用
コマンドプロンプトをフルスクリーンで動かすようなことをしない限り普通にWindowsのエディタで編集できるし
コンパイルなんてbcc32 source0.cpp source1.cppでいいわけだし
0224デフォルトの名無しさん
NGNGWindowsのコマンドプロンプト上で動作する
コンソールアプリならmainから始まるプログラムが作れる。
けど、その場合BCBは大してお勧めではない。
フリーのコンパイラで十分じゃないかな。
ぶっちゃけると、Cからプログラミングを始めるのも、
今の状況ではどうかと思う。
ついでに言うとOWLやMFCを使わなくてもWindowsアプリは
作れる。大変だけど。
0225デフォルトの名無しさん
NGNG>ついでに言うとOWLやMFCを使わなくてもWindowsアプリは
>作れる。大変だけど。
サンプルプログラムを動かして、自己満足する程度しかできません。
市販ソフトやネット上でも有名なソフトと張り合おうとすると
MFC,OWL,ATL等のクラスライブラリを使いこなさないとまず、無理
0226デフォルトの名無しさん
NGNGんなもん、これからCを覚えようとかそういうレベルで心配するこっちゃ無いだろ…
ライブラリにしたって、買わなきゃいけないわけでもなくて、wxその他フリーのもあるし
やってみて、こりゃ手に負えないとなってから、財布と相談しても遅くないだろ
つーわけで、今の段階で気にしなくていいと思われ。
本人が必要と感じたらその時本人が「買って欲しい」って言うでしょ
0227デフォルトの名無しさん
NGNGCよりC++から入った方がいいんじゃない?
0228デフォルトの名無しさん
NGNG生活かかってるならまだしも、お遊び程度なら、間違いなく挫折する。
0229デフォルトの名無しさん
NGNG0230デフォルトの名無しさん
NGNGそうかぁ〜?
C++言語自体はたいした事ないよ。1週間あれば余裕
0231デフォルトの名無しさん
NGNGプログラミング未経験者だとまず無理かと
条件分岐すら知らないわけだし
0232デフォルトの名無しさん
NGNG0233デフォルトの名無しさん
NGNG禿同
ショボイのしか作れないもんねw
0234デフォルトの名無しさん
NGNG独創的なものを作れることは全くの別能力である。
だからと言って基本はおろそかにしてはいけない。
0235デフォルトの名無しさん
NGNGポインタやクラスで躓く気がするけどな。
関係ないけど、FORTRAN77しか使えないオサーンにC言語を教えたけど、
構造体の配列より普通の配列を複数用意した方が楽らしい・・・。
0236デフォルトの名無しさん
NGNG私はこれでコンソールの勉強させました。
0237216
NGNG彼に勉強させようと思っているのは、計算機のごくごく基本的なことです。
2進数から始まり、構造体、配列、ポインタ、ソート、検索、リスト、木などを
しっかりモノにしてもらいたいと思っています。まだまだこれから先のある奴なんで。。
ですのでWindowsアプリである必要はありません。環境を含めた(初心者にとっての)使い
勝手としてBCBがよいのでは、、、と考えていました。
だけどWin32コンソールがよさげですね。その方向で検討してみます。
ところでCのテキストは「はじめてのC」でOK?
0238デフォルトの名無しさん
NGNG計算機の基本を教えるなら
二進数の次はアセンブラだろ?
0239デフォルトの名無しさん
NGNGじゃなかった
>>237
すまん
■ このスレッドは過去ログ倉庫に格納されています