現在開発環境としてVC++(Ver6.0)を使っていますが、
C++Builderの導入を考えています。
(上司がVC嫌いって話もありますが)
こちらは全く使ったことがないのでよくわからないのですが、
両者の違い(?)、また使い勝手などご意見をお聞きしたいのです。
また、VCとC++Builder間での移植は容易に行えるものなのでしょうか?

はっきりとした質問でなくてすみませんが、よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

VCとCBの違についての自分の経験からではありますが、画面作成及びイベント処理作成のみで考えればCB=VBだと思いますが。

画面作成については各オブシェクトを選択して配置するだけですし、イベント処理についても一般的なWindowsイベントがメゾットとして提供されています。また、各メゾット及びプロパティについてのヘルプ機能が充実している様に思います。ですので一般的なGUIの画面を開発するのであればCBの方が短期間での開発が可能かと思います。但し提供されていないWindowsイベントを処理しようとしたりするとCB君が牙を向くかもしれませんが、問い合わせインシデントを購入すれば問い合わせする事でサンプルコード等を提供してくれます(インシデント料金はかなり高いですが)。CBの初心者が開発するには確かに最初は色々と調べることがありますが、VCに比べれば短期間でマスタ出来ると思いまよ。
    • good
    • 0

これもはっきりとした回答でなくて申し訳ないのですが、どうしても C++Builderを使う場合は、使う用途によって分けるのが良いと思います。


うちでは OCXや DLLを作る場合は VCを、ユーザーインターフェースなどを CBで作るという場合があります。ただ、普通の OCXを作れば CBに限らず使えるのですが。
CBは VCLに依存したコードを書く場合は便利ですが、それ以外の場合(APIを多用する場合やコントロールに依存しない OCX等)は、少し使いづらいと感じました。
どちらにしろ、ある程度使い慣れてみないと感覚がつかめないと思いますので、いろいろやってみましょう。
結局は使う人のセンスに合ったものが一番使いやすいので、使ってみないとわからないというのが回答かもしれません。
    • good
    • 0
この回答へのお礼

使い分けされていると言うことなので
やはりUIはC++Builderのほうが使いやすいのでしょうね。

今後のメンテナンス等も考えると私一人でC++Builderで作っていいのか?
という不安がありますが、
ちょっと使って調べてみる価値はありそうですね。

ありがとうございました。
また何かありましたらよろしくお願いします。

お礼日時:2001/03/14 12:04

補足です。

というか訂正というか...
C++Builderは、少ししか使っていませんので、何とも
分かっていない部分はあるのですが、Builderは、
単にコントロールを貼りつけてプログラミングを
進めることができる、というだけではなく、
個々のコントロールが、「部品」として分かりよく
独立している、というか...

たとえば、MFCを使うと、ボタンのクリックなんかでも
Windowsのメッセージを選択して、関数を生成して、それを
編集する、というような方式を強いられるわけですが、
Builderの場合は、ボタンのオブジェクトから、「OnClick」
と書かれた「イベント」に関数名を書きこんで(あるいは
ダブルクリックして)関数を作成できますので、Windowsの
メッセージを意識する必要もないし手間も少ないです。

...うーん...でも、こんなのは大した違いではないので、
全然よい例ではありませんでしたネ...(--;

ですが、MFCだとコントロールも「ID」とかで管理したりして、
何となくとっつきにくい感じがあるじゃないですか?
ViewクラスとかDocクラスとかって、ややこしいのもあるし...
Builderでは、そういう面倒がないのです。
(って、詳しくは知らないんですけど...(^^;A

そういったような点で...
非常に手軽で、簡単で、親切な印象を受けるわけです。

なんとも煮え切らない、分かりにくい表現になってしまいましたが、
私が感じた快感、分かってもらえたでしょうか?(^^;
    • good
    • 0
この回答へのお礼

ありがとうございました。
確かに、VCのとっつき難さはあるんですよね。
ちょっと開発期間の短縮を迫られているので、
GUIの部分だけはC++Builderでやってみようかな、という気もします。

また判らないことがありましたらココへ着ますのでよろしくお願いします。

お礼日時:2001/03/14 11:59

C++Builderは、Delphiみたいにフォームにコントロールを


貼りつけてGUIを設計できます。「できます」というより、
それが標準のプログラミングスタイルになります。VC++の
ように、ダイアログベースのものだけは、コントロール貼りつけ
方式(?)プログラミングが可能、というものではありません。
この点がもっとも大きな違いになるでしょう。

また、
VC++の場合は、大抵の方はMFCを使うだろうと思いますが、
C++Builderの場合は、VCLというクラスライブラリを利用
できます。VCLはMFCよりもクラスライブラリとしての完成度
が高いという評判で、MFCがAPIをラップしただけのような
感じがあるのと違い、ツールとしてよくできているらしいです。
それから、BuilderはMFCをサポートしていますということ
ですので、おそらく、VC++からの移植は比較的容易なのでは?
と思います。(注:やったことはありません。推定です)

私はすこしだけしか使ったことはありませんでしたが、
非常に使い勝手がいいように感じました。
VC++なら結構手間をかけるようなことが、いとも簡単に
できたりして、ちょっと快感でした(^^
すくなくとも、VC++よりも、楽しくプログラミングが
できそうな感じでしたよ。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QC++でコンテナを扱う際の質問です。

C++でコンテナを扱う際の質問です。

確保されるメモリ位置が最後まで保証されているコンテナは存在するのかを知りたいです。

Vectorは連続性が保障されていることから間違いなくアドレスは変わると思うのですが、Deque、Listなどはどうか知りたいです。

固定されているならアドレスをMapのkeyのように扱えるかも?などと考えた次第です。

Dequeだと削除しないかぎり変わらないよ!などといった条件がある場合はそれも教えていただけると尚嬉しいです。

よろしくお願いします

Aベストアンサー

コンテナなどは、連続性といっても見かけの連続性だけを保証するのが普通です。

その意味からは、物理的なアドレスが固定されているかどうかは断言できません。
そういうわけで、コンテナの場合は、ポインタ経由ではなくて、イテレータ経由でアクセスするわけです。

ただ、deque は、[] をサポートしているので、

std::deque<int> que;

に対して、 que[0], que[1] などは、期待通りの動作をするはずです。(未確認)
残念ながら、list は、[] をサポートしていませんので、同じ記述はできません。

もともと、配列のレベルであっても、連続性は厳密には、

・ &a[n] - &a[m] が、n - m に等しくなる
・ ptr = &a[n] のとき、*(ptr + m) は、a[n + m] をポイントする

ということであって、あからさまに、物理的なメモリのアドレスは出てこないですから。
なので、ポインタ同士の減算も、「両方のポインタが同じ配列にあるか、一度に malloc() された同じ領域をポイントしている場合」しか、保証されていなかったりします。

コンテナなどは、連続性といっても見かけの連続性だけを保証するのが普通です。

その意味からは、物理的なアドレスが固定されているかどうかは断言できません。
そういうわけで、コンテナの場合は、ポインタ経由ではなくて、イテレータ経由でアクセスするわけです。

ただ、deque は、[] をサポートしているので、

std::deque<int> que;

に対して、 que[0], que[1] などは、期待通りの動作をするはずです。(未確認)
残念ながら、list は、[] をサポートしていませんので、同じ記述はできません。

もともと、...続きを読む

QVC++ vs C++Builder

私はボーランド派なのでVC++はしたことがありません
両方やった人に聞きます

1.どちらがいいのですか?
2.VC++は完全にはSTLに対応できていないのですか?
3.RADツールとしてはどちらが優れて今⊂のでしょうか?
4.利害得失を列挙できるのであれば教えてください

Aベストアンサー

こういう質問には'好み'で答えるしかない部分が多いので、真に受けてもらっても困ると前置きした上で:

[1] どちらも同じ。
[2] どちらも標準C++には完全には準拠していない。
[3] C++Builderの方が優れているようだ。
しかしその反面、はRADのために言語仕様を捻じ
曲げている。だから嫌い。
[4] ノーコメント

QVisual C++ 6.0とVisual C++ 2005 についてですが・・・

Visual C++ 6.0でワークスペースと呼ばれていた物がVisual C++ 2005になるとソリューションと言う名前になったと聞きました。
また、Visual C++ 6.0で製作したファイルはVisual C++ 2005でも開けるけどVisual C++ 2005製作したファイルはVisual C++ 6.0では開けないと聞いたのですがVisual C++ 2005製作したファイルをVisual C++ 6.0でも開ける様に互換性を持たせる方法はありませんか?
学校と家で使っている環境が違うので互換性がもてれば両方で使えてとても便利になります。
御存知の方がいましたら御伝授お願いします。

Aベストアンサー

ソースファイルやヘッダファイル(拡張子CPP/C/H/HPPなど)はVisual C++ 6.0と2005で共用できるので、6.0用のプロジェクトファイル&ワークスペースと、2005用のプロジェクトファイル&ソリューションファイルを用意すれば両方の環境で開発を進めることができるでしょう。

但し、以下の点にご注意下さい。
・ソースファイルの追加や削除は両方のプロジェクトに対して行うこと。
・Visual C++6.0ではManaged C++が使えないのでManaged C++は使わないこと。
・MFCの仕様がだいぶ違うので、MFCも避けること。MFCを知り尽くしているのでしたらチャレンジはご自由に。
・C++コンパイラとしても若干仕様が違うので(for文内で定義された変数のスコープなど)、常に両方の環境でコンパイルできるか考えながら開発する必要があること。

QVC++ と C++Builder

C++の基本的な構造は理解していて、Win32APIを勉強しようとVC++でプログラミングを始めた者です。参考書は猫でもわかるWindowsプログラミングを見ながら勉強しています(難しくてあまり理解出来ていませんが)。
しかし、機能が多すぎたりと使いこなす自信がありません。
C++Builderに変えてみようかと思っているのですが、VC++とC++Builderの違いを教えて下さい。漠然としすぎていてアホっぽい質問ですが・・。
VC++とC++Builderのプログラムの書き方の大きな違いなどはあるのでしょうか?
また、みっちり調べたつもりですが無償のBorlandC++Builderが見あたらないのですが・・・。

Aベストアンサー

VC++ができれば問題ありません
C++Builderはいろいろ買収されて今はエンバカデロというメーカーみたいですね。


企業で使う場合もマレでして、使う場合でもDelphiかKylixです。
Delphiは高速性に優れていますね。開発しやすいですが今は案件はないでしょう。

そもそもC++は高速性に優れ、算術演算なども適していますが、一般の業務アプリケーションには
不向きです。

宣言して、変数もその都度初期化が必要ですし、スタックオーバーフローとかの問題もありますから。


書き方に違いはありません。
スーパークラスがATL,MFCのMS系との違いです。昔ちょっとC++Builderやりましたが忘れました。
C++Builder のほうが優れているこことは言うまでもありませんが、情報が少ない。
ネットでも書籍でもMSに比べてとても少ないのが欠点であり、初心者にはわかりずらいです。

VCの無料である程度クラスの知識とかないと極めて難しいと思います。
ヘルプもきっと英語だろうし。

私も最初は
Win32APIのヘルプ見ても、なにがなんだかさっぱりでした。
今は理解できますが、当時はヘルプのヘルプが欲しくて、本当に苦労しましたよ。


C++Builder 2010 Architect - 30 day trial
https://downloads.embarcadero.com/free/c_builder
をダウンロード

C++Builder 6 Personalのキー
http://support.codegear.com/jp/article/39702

のキーを入れるとパーソナル(無料)として使えるかも知れません。

できなかったら、ここで登録するとできるかも。
https://members.embarcadero.com/Login.aspx?returnurl=http%3a%2f%2fcc.embarcadero.com%2fmyreg

既に買収されて、バージョンが今は異なるのでわかりません。
米国のサイトからftpで入れば拾えるかも知れません。


あとはここに書くとマズイですけど
検索のやり方次第で無料で手に入りますね。
ダウンロードして確認まではしていませんが、たくさんヒットしましたよ。
実際にダウンロードサイトもたくさん出てきましたし。

VC++ができれば問題ありません
C++Builderはいろいろ買収されて今はエンバカデロというメーカーみたいですね。


企業で使う場合もマレでして、使う場合でもDelphiかKylixです。
Delphiは高速性に優れていますね。開発しやすいですが今は案件はないでしょう。

そもそもC++は高速性に優れ、算術演算なども適していますが、一般の業務アプリケーションには
不向きです。

宣言して、変数もその都度初期化が必要ですし、スタックオーバーフローとかの問題もありますから。


書き方に違いはありませ...続きを読む

QCかC++どちらを覚えるべきですか?

初めまして。せいじと申します。よろしくお願いします。
プログラミング経験なしです。今30歳です。
遅すぎますが、これからC言語かC++言語をマスターしたいと思っています。
Windows 98 + Borland C++ Compiler 5.5
で勉強しようと思ってます。

Cの拡張されたものがC++だからC++を覚えようと思って、C++の本を買いました。
・新C++言語入門 ビギナー編 SOFTBANK Publishing 林 晴比古 著
・詳説C++             SOFTBANK Publishing 大城 正典 著
2冊ともまだ最初の方を読んで実践しただけです。

クラス、オブジェクト指向プログラミング等々が何なのか分かっていないのに、
C++をする意味があるのか、まずはCで十分ではないのか?
と思うようになってきました。

実際どうしたら良いのでしょう。
何も知らないならC++からでも良いのでしょうか。
違いが分からないならCで十分なのでしょうか。
みなさんの意見を聞かせてください。

よろしくお願いします。

初めまして。せいじと申します。よろしくお願いします。
プログラミング経験なしです。今30歳です。
遅すぎますが、これからC言語かC++言語をマスターしたいと思っています。
Windows 98 + Borland C++ Compiler 5.5
で勉強しようと思ってます。

Cの拡張されたものがC++だからC++を覚えようと思って、C++の本を買いました。
・新C++言語入門 ビギナー編 SOFTBANK Publishing 林 晴比古 著
・詳説C++             SOFTBANK Publishing 大城 正典 著
2冊ともまだ最初の方を読んで実...続きを読む

Aベストアンサー

seiji-h さん。こんにちわ。
プログラミングを今後主に何の目的で使いますか?

(1)仕事でC++が必要。
 頑張っておぼえましょう。

(2)文書データの加工など。。。
 今すぐPerl言語に切り替えましょう。

(3)趣味でWindowsアプリなどの作成を目指して。。
 そのままコツコツC++を続けていってください。

(4)歯ごたえのあるプログラミング言語を。。。
 そのままコツコツC++を続けていってください。

>実際どうしたら良いのでしょう。
>何も知らないならC++からでも良いのでしょうか。
どのようなことに興味をおぼえるかで、Cから始めるべきか、C++から始めるべきか
向き不向きがあります。

★簡潔な文法をもとに、ガリガリと自分の思うままに、プログラミングしたい。
とにかく自分で動くものを作りたいということなら、Cから始めるのが向いていると思われます。
★プログラミングすることよりも、プログラミング言語「自体」に興味があって、
一種の研究の対象と考えている場合は、C++の方が、おもしろおかしく学べると思います。

seiji-h さん。こんにちわ。
プログラミングを今後主に何の目的で使いますか?

(1)仕事でC++が必要。
 頑張っておぼえましょう。

(2)文書データの加工など。。。
 今すぐPerl言語に切り替えましょう。

(3)趣味でWindowsアプリなどの作成を目指して。。
 そのままコツコツC++を続けていってください。

(4)歯ごたえのあるプログラミング言語を。。。
 そのままコツコツC++を続けていってください。

>実際どうしたら良いのでしょう。
>何も知らないならC++からでも良いのでしょうか。
...続きを読む

QC++BuilderのコードをVC++用に変更するには?

環境 WIN98 VC++6.0 MFC にて

ネット上でちょうど私が知りたいことが載っているサイトを見つけました。
それは付箋ソフトの作り方を解説しているサイトです。
http://www.zdnet.co.jp/developer/0307/18/dvn06.html

しかしながら、そのサイトではC++Builderを使っています。
C++BuilderのコードをVC++用に変更したいのですが、
お分かりでしたお教えください。

知りたいのは、以下のコードです。
C++Builder専用のコードかと思いましたが、調べるとSubStringはAPIだったのでVC++でも使えると思います。
Pos()は調べても分からなかったのですが、変わりになる関数は有るのでしょうか?


**********************
// 「,」で区切られた文字列から要素を切り出す。
// メモデータのロードに使う
static AnsiString GetToken(AnsiString &s) {
AnsiString ret;

// ,が文字列に含まれる場合、
// ,より前の文字列を戻り値とし、
// 引数の文字列の,以前を削除する。
// 例えば引数の文字列が"1,2,3"の場合、
// 戻り値は"1"、引数の文字列は"2,3"となる。
int pos=s.Pos(",");
if (pos>=1) {
ret=s.SubString(1,pos-1);
s=s.SubString(pos+1,s.Length()-pos);
return ret;
}

環境 WIN98 VC++6.0 MFC にて

ネット上でちょうど私が知りたいことが載っているサイトを見つけました。
それは付箋ソフトの作り方を解説しているサイトです。
http://www.zdnet.co.jp/developer/0307/18/dvn06.html

しかしながら、そのサイトではC++Builderを使っています。
C++BuilderのコードをVC++用に変更したいのですが、
お分かりでしたお教えください。

知りたいのは、以下のコードです。
C++Builder専用のコードかと思いましたが、調べるとSubStringはAPIだったのでVC+...続きを読む

Aベストアンサー

MFCを使うといっても
書かれているC++Builderを
CStringとその関数を用いて書き直しただけですが、

CStringGetToken( CString* s ){
CStringret;
int pos;

pos = s->Find(",", 0);
if(pos>=1){
ret = s->Left(pos);
*s = s->Right(s->GetLength() - pos - 1);
}
return ret;
}

で同様の動作になります。

QVisual C++を使用するには,C++の知識は必要?

Visual C++ を使用する必要が生じたのですが,C言語の知識しかなく,
VC++を使用するにあたり,新たにC++を勉強しなければならないか分かりません。
C++を勉強してから,VC++を勉強し始めるべきなのでしょうか?
また,もしC++の勉強をしなければならない場合,使用する参考書として「独習C++」を考えているのですが,この参考書で事足りるでしょうか?
回答よろしくお願いします。

Aベストアンサー

ANo.1の方に同感です。

私はMS-DOSでのC言語からVC++へジャンプしました。

VC++を理解するということは
 1.C++という言語
 2.windowsOS,API
 3.MFC
を理解するということです。

私のとっかかりの本は、3冊のシリーズで
 1.Windowsプログラミングについて
 2.C++について
 3.MFCについて(だった思う)
に分かれており、C言語の知識とwindowsのアプリを触った経験があれば順を追って素直に理解できるものでした。
#処分してしまったので正しい書籍名はわかりませんが、クリーム色のカバーでした。

ただ、これはあくまで入門書で、その後C++に関する本、MFCに関する本、WIN32APIに関する何冊か読まないと、やはり仕事はできません。

QVC++又はC++Builderでもいいのですが

VC++又はC++Builderでもいいのですが
マウスをドラッグしながら移動すると
範囲を表示する線がでますが
あれはどうやっているのでしょうか?
わかりにくくてすいませんが
よろしくお願いいたします

Aベストアンサー

DrawFocusRectかな?

マウスカーソルが移動されるたびに、以前の座標と新しい座標でこのAPIを呼び出しているんだと思います。

QC/C++でアプリ開発

C/C++でアプリ開発

いまどきC++でアプリ開発なんてしないのででしょうか。
C/C++を使うのは組み込み分野とかぐらいなんでしょうか?
もし新卒の大学生がC/C++でアプリ開発するならどういう会社に入ればよいでしょうか?

Aベストアンサー

ソフトウェアハウスとかなら今でもC言語が必要になる案件は多いです
Windows向けソフトウェアの受託とか、Linuxアプリケーションとか。

ただ、C言語でそれなりの結果を出している
というわけでは無いのでしたら、
無理してC言語にこだわらない方がいいかもしれません。
Cで開発するだけの自信があるのでしたら、
それ以外の言語の仕事も十分に出来ますし、
そっちの方が仕事が捕まえやすいというのもあります。
それにC言語の仕様の多さは他の言語には類を見ないくらいに大きいですから、
他の言語の仕様を覚えてからでも、十分に役立たせることが出来る。

QC++Builder → Visual C++ 移植について

C++BuilderXを使って開発したアプリケーションがあるのですが
64bit版Windowsへの対応の要件が出てきました。
ところが、C++Builderがいまだに64bit版Windows未対応(2009年中頃対応予定との事)
なので、Visual C++での作成を検討しなくてはならなくなりました。

と言った状況なのですが、
C++Builder → Visual C++ に移植する際に、どういった問題点が出てきますでしょうか。
VCLを使っているところなんかはもちろん見なければならないでしょうが
他に注意するべき点などはありますでしょうか。

詳しい方がいらっしゃいましたらお教え願います。

Aベストアンサー

文法面ではTemplateまわりにコンパイラごとの違いが出やすいですね
VCもコンパイラのバージョンによってかなり違いがあるので
どのバージョンによるかで変わってきます
あまり複雑なTemplateの使い方は移植性を考えて
避けておくのが無難です。

後はC++Builder特有の拡張ではプロパティの宣言がありますね

あと文字列操作とファイルディレクトリ操作の関数も
C++Builder特有のものがあるので、使ってるかどうか注意が必要です


人気Q&Aランキング

おすすめ情報