他のヘッダーファイルの内容をヘッダーファイルで使うには – プログラミング – Home

他のヘッダーファイルの内容をヘッダーフ...
 
通知
すべてクリア

[解決済] 他のヘッダーファイルの内容をヘッダーファイルで使うには


define
 define
(@define)
ゲスト
結合: 12年前
投稿: 2
Topic starter  

初歩的な質問で恐縮です。

VisualStudio2010を使用している者です。

define.hの中で

const int xnum_max=4;

と置き、別のヘッダーファイルで

#include define.h

class CAuto
{
public:
CAuto(void);
~CAuto(void);

int xnum,ynum,znum;
int block_num[xnum_max];

}

と書いてコンパイルすると、

error C2065:'xnum_max:定義されていない識別子です。

というエラーが出ます。

int block_num[xnum_max];

のxnum_maxにマウスをかざすと、

const int xnum_max=4 

という表示が出るので、認識されていない訳ではないようなのですが、
なぜエラーが出るのでしょうか。

お忙しいとは存じますが、よろしくお願いします。


引用未解決
トピックタグ
AR2
 AR2
(@ar2)
Estimable Member
結合: 5年前
投稿: 110
 

認識されていると見えるものは入力補助機能であって、コンパイラの文法的に通らない
からです。


返信引用
仲澤@失業者
(@uncle_kei)
Prominent Member
結合: 5年前
投稿: 828
 

classの閉じカッコ '}' の後ろにセミコロン';'がない以外は
文法的な間違いはありません。

このような場合は、
1.define.hが、いくつかあり、当該の定義がされていないものを
 #includeしてしまっている。

が考えられます。従って

2.class CAuto{}の直前に
 const int xnum_max=4;
 を記述して、エラーの無い事をする。

3.できれば、不要なdefine.hを削除する。

4.又は、プロジェクトのプロパティで、「追加のインクルードパス」
 が意図したものとなっているか確認する。

5.#include define.hの上にカーソルを置き、右クリックの
 コンテキストメニューから「ドキュメントdefine.hを開く」
 を行い、const int ・・・行のある、意図したヘッダーが
 開かれるのを確認する。

等を行ってみるのが、良いと思います。


返信引用
仲澤@失業者
(@uncle_kei)
Prominent Member
結合: 5年前
投稿: 828
 

× を記述して、エラーの無い事をする。
○ を記述して、エラーの無い事を確認する。
・・・orz.


返信引用
define
 define
(@define)
ゲスト
結合: 12年前
投稿: 2
Topic starter  

ご返答、ありがとうございます。

不要なdefne.hが見つかりましたので、削除したら、正常に動作しました。

ご協力、感謝します。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました