• ベストアンサー

C++Builderでの警告

C++Builderでユーザヘッダmy.hを インクルードしてコンパイルさせたところ [C++ 警告] my.h(8): W8058 ヘッダに初期化データが含まれているためプリコンパイルヘッダーを作成できない との警告がでました原因はなんでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • KoHal
  • ベストアンサー率60% (110/181)
回答No.2

その警告は無視して差支えありません。 プリコンパイルヘッダはコンパイルに要する時間を節約するためのオプションですが、それが作成できなかったとしてもコンパイル時間が少し長くなるだけのことです。 毎度毎度同じ警告を見るのは鬱陶しい、または、無駄なコンパイル時間は極力省略したいと思うのでしたらヘルプで、   プリコンパイルヘッダ   #pragma hrdstop を調べると必要な情報が得られます。

M-hirorinn
質問者

補足

//--------------------------------------------- #pragma hdrstop //-----------------------------------------------#pragma argsused //----------------------- #include<stdio.h> #include"c:\my.h" main(){   ・    ・    以上のように、コンソールモードプログラムですが #pragma hdrstopと#pragma argsused を付けたら警告が出なくなりました。 これで問題ないのでしょうか?

その他の回答 (2)

  • KoHal
  • ベストアンサー率60% (110/181)
回答No.3

あら、間違ってましたね。 ×#pragma hrdstop ○#pragma hdrstop でよろしいです。 No.2補足のソースだとプリコンパイル対象のヘッダがなしになりますが、それで構わないのでしたら問題はありません。

回答No.1

警告の述べる通り。 初期化データが含まれているとpre-compileできないのでしょうね。

関連するQ&A

  • Borland C++ Compiler 5.5の警告について

    Borland C++ Compiler 5.5を使用してコンパイルしているのですが、 下記のソースをコンパイルするとエラーがでます。 #include <stdio.h> ------test.c------ int main(void) { int a; int b=0; b = a; return 0; } 警告 W8004 error.c 6: 'b' に代入した値は使われていない(関数 main )という警告なのですが、初期化をしている変数すべての警告がでてしまい困っています。 この警告だけを表示させない方法等あるのでしょうか?

  • C++Builderの警告

    Chart1->Series[0]->Clear(); グラフのコンポーネントを上記のようにして、書き直しの初期化を行うと、以下の警告が出ます。 [C++警告]TEST.cpp(138):W8006 'TColor'を'const int'で初期化している。 動作上は問題ないのですが、警告の意図は何なのでしょう? よろしく御願いいたします。

  • C++Builder6 での複素数計算

    C++builder6 で複素数計算が出来なくて困っています、 UNIT1.CPPのヘッダー部分に  #include <vcl.h>  #pragma hdrstop  #include <iostream>  #include <complex.h>  #include "Unit1.h" //-----------------------------  #pragma package(smart_init)  #pragma resource "*.dfm" を書いて イベントハンドラ部分に変数の宣言   complex<double> z; として緑色三角形の実行ボタンをクリックすると   「未定義のシンボル complex」 と言うエラーが発生します、 この解決方法を教えて頂ければ幸いです、宜しくお願いします。 (なお C++builder5 では何の問題もなく複素数計算のソフトが出来ていました)   

  • C++Builderの選択

     いつも勉強させていただいています。どうぞよろしくお願いします。  今手元にあるアプリ(C++Builder5.0のソースコード付き)をいじりたく、 これを機会に初めてC++の勉強をしたいのですが(経験のある言語は Fortran、VBです)、C++Builderのどれを購入するかで迷っております。  ポイントとしましては、 ・上のC++Builder5.0のコードがコンパイル可能なもの  (先日、無料のBorland C++Compiler5.5をダウンロードしてコンパイルを試みても  できませんでしたorz (vcl.hというファイルが足りないようです)が、  C++Builderであればバージョン違いでもコンパイルできるのでしょうか?) ・書籍が比較的多いもの。(調べているとC++Builder6は比較的多そうな?気がしたのですが。。。) ・今後も暫く使えそうなもの。(C++Builder5 Personalとかかなり安いようなのですが、  皆さんもっと新しいもので開発なされているという事でしょうか。。。?) ・¥は7~8万くらいまで?  PersonalとProfessionalの違いや制限もよく分からないので、 もしお詳しい方がいらっしゃいましたら、ぜひ教えていただければと思います。  どうぞよろしくお願いします。

  • C++Builder XEのコンパイル&実行

    以前C++ Builder5で作成していたプログラム(プロジェクト)を、C++ Builder XEで使うことになり、XEでコンパイルを行った時に出るエラーは全部直し、実行しようと思ったのですが、「コンパイル成功」と出た後に実行画面が出ません。 「実行」を押したときに、コンパイル成功で実行画面が出ない理由には、どのような原因が考えられるのでしょうか? 思い当たる原因があったら、ぜひ教えてください。

  • C++Builder XE とOpenCV

    長年C++Builderでプログラムを書いていますが、いつも全体をコピーして必要な所を変更しているので、開発環境の作成には自信の無い者です。 背景 昨年来、OpenCVとDirect-Xでカメラと画像のプログラムを開発していました。 今年2月にC++ Builder V5 とOpenCV V1.0 Direct-X9 で目的の動作をするものが完成しました。 W.2000とW.XPが対象ならばこれで良いのですが、世の中のOSがW.7に移っており、古いOSのPCの販売も無くなって来ている所から、W.7への乗せ替えを計画しました。 なお、OpenCV V1.0を使用しているのは、OpenCVでの開発開始当時、V2も試したのですが、V1.0でしかうまくコンパイル出来なかった為です。 問題点 新しい開発環境はOS W.7にC++Builder XEを搭載しました。 Builder V5に比べ、XEは文字コードがUniCodeに成っている等、文法エラーが多発していましたが、やっと文法エラーが無くなり、コンパイルが終了しました。 ここで実行させようとした所、cvhaartraining.dll がありませんとのメッセージが表示されてしまいました。 このメッセージはW.XP と C++Builder V5でコンパイル、実行させた時には出なかったものです。 更に、ダウンロードしたOpenCV1.0にはcvhaartraining.dllが含まれて居ませんでした。 ただ、cvhaartraining.cpp、cvhaartraining.lib 、cvhaartraining.h は含まれていました。 ネットでcvhaartraining.dllを検索して見ましたが、見つかりませんでした。 そこで、cvhaartraining.cpp、cvhaartraining.lib 、cvhaartraining.h があるのですから、これからDLLを作るか、プログラムが動作すれば良いのですから、プログラムに組み込んだり出来ないでしょうか。 先に述べた様に、開発環境やプログラム構造を変えた経験は殆ど無いのですが、この問題の解決策があれば挑戦して見たいと思って降ります。 解決策お分かりに成る方が居られましたら宜しくお教え下さい。

  • Borland C++ Builderで簡単なC言語プログラムの作成・実行

    Borland C++ Builderで簡単なCのプログラムを作り実行させるにはどうしたらよいですか? DOS窓上でコンパイルするのではなく、Borland C++ Builderのメニューから行いたいのです。 一応、「ファイル→新規作成→その他→Cファイル」でCのファイルは作成できるのですが、このファイルを「プロジェクト→ユニットのコンパイル」でコンパイルすることができません。 Formオブジェクト(?)を作成しておくとコンパイルできます。 Formは特に必要ないので、FormなしでCのファイルだけをコンパイルしたいのです。 DOS窓でのコンパイル・実行はできます。 事情があってBorland C++ Builderを使わなくてはなりませんので、他のIDEはこの際全く解決になりません。 よろしくお願いします。

  • C++Builder  リンカエラーとは?

    はじめまして。プログラム超初心者です。 C++Builderを用いてプログラムを作成したのですが『リンカエラー』というものがでてコンパイルできません。 これはどういうことなのでしょうか?また、解決策にはどのようなものがありますでしょうか? よろしくお願いします。

  • C++ Builderでユニットの追加

    趣味でプログラミングを行ってますCerapodaと申します。 Builderを使って1つのFormと1つのCpp,hファイルを使ったプログラミングならある程度のところまで出来ると思っているのですが 以前違うプロジェクトで作った関数を新たなプロジェクトで使おうとして いちいちコピー&ペーストするのも大変なので ひとつのユニット&ヘッダーファイルとしてインクルードして使いたいなと思いました。 そこで http://www.osakac.ac.jp/labs/matsuura/japanese/program/C++Builder/Project/projectManyForm.htm このページを参考にしてUnit1とUni2を作成し Unit2に double Analysis::Function(double val) { return(1.0-val); } の関数を追記。 Unit1のcppに C.Function(0.5); と書き加えたのですが [リンカ エラー] 外部シンボル '_C' が未解決… とエラーが表示されてしまいます。 どこに問題があるのか教えていただければ幸いです。 情報が足りない場合は、補足しますのでよろしくお願いします。 また、このような作業で参考になるサイト,URL等ありましたら教えていただけると幸いです。 よろしくお願いします。

  • Borland C++ Builderによるdll作成について

    Borland C++ Builderを使用してプロジェクトをコンパイル してdllを作成する際、コンパイルに成功してあるdllができたとして、 その後プロジェクトに何の変更もなく、再コンパイルすると dllの中身は何か変わっているのでしょうか? 例えば、コンパイル日時の情報が中に書き込まれているなど。 サイズが変わることもあるのでしょうか?

専門家に質問してみよう