エラーの原因がわかりません – プログラミング – Home

エラーの原因がわかりません
 
通知
すべてクリア

[解決済] エラーの原因がわかりません

固定ページ 1 / 2

はな
 はな
(@はな)
ゲスト
結合: 23年前
投稿: 123
Topic starter  

WinXPのVC++6.0です。

コンパイルすると//set standard headerという所に

→_STD_BEGINに印がついて
『error C2059: 構文エラー : 'namespace'』と『error C2334:'{' の前に予期しないトークン
がありました。関数の本体は無視されます』出るんですが、どんな事で回復するのでし
ょうか??

三つのクラスに同様のエラーが出ます。


引用未解決
トピックタグ
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 22年前
投稿: 1301
 

あなたの書いたコードを見せてもらわんとどーにもなりません。
解決の糸口を出し惜しみして困るのはアナタ。


返信引用
はな
 はな
(@はな)
ゲスト
結合: 23年前
投稿: 123
Topic starter  

すいません、どこを載せればよいかわからなくて。

// set standard header

#if _MSC_VER > 1000
#pragma once
#endif#ifndef _SET_
#define _SET_
#include <functional>
#include <xtree>

#ifdef _MSC_VER
#pragma pack(push,8)
#endif /* _MSC_VER */

_STD_BEGIN…※

以下続く

コンパイルしてF4を押すと、※に矢印がついてさっきのコメントがでます。

多分ここをお見せしても意味がないと思うんですが。まず、set standard headerという
のがどこなのかわかりません。


返信引用
PATIO
(@patio)
Famed Member
結合: 4年前
投稿: 2660
 

落ち着いて書き込んだ内容でそれだけを読んだ人間が状況を
把握できるのかを考えてみてください。

> コンパイルすると//set standard headerという所に
> →_STD_BEGINに印がついて

これだけ書かれていても何の事だかわからんと思うのですが。
ソースファイルやヘッダーファイルの中身を把握しているのは
あなた自身だけでこれを読んでいる人間には全くわかりません。


返信引用
PATIO
(@patio)
Famed Member
結合: 4年前
投稿: 2660
 

あらら、ニアミス。

出しているファイルのファイル名くらいわかりませんか?
普通、エラーコードの所に書いてありそうなもんですが。

なんか、C言語のコンパイルをしているのに
namespaceを使っているような気がするのは私だけですかね。


返信引用
はな
 はな
(@はな)
ゲスト
結合: 23年前
投稿: 123
Topic starter  

作成している.cppファイルの\include\setの中のファイルのようですね。


返信引用
PATIO
(@patio)
Famed Member
結合: 4年前
投稿: 2660
 

Microsoft提供のヘッダーファイルで無いなら
ファイル名がわかっても多分意味ないですね。
ヘッダーファイルは多分、はなさんの手元にしかない。
はなさんの関係者は持っているかもしれませんけれど、
掲示板を読んでいる人間にはわかりませんし。

_STD_BEGINの定義内容は何処にあるんでしょうねぇ?

仮に_STD_BEGINを
namespace std {
に置き換えたらどうなるのだろう。


返信引用
PATIO
(@patio)
Famed Member
結合: 4年前
投稿: 2660
 

もしかしたら

#include <functional>
#include <xtree>

でインクルードしているヘッダーファイルの方に問題があったりして。
VC++6.0ってC++の準拠率が低いからそれで引っかかっているのかも。


返信引用
はな
 はな
(@はな)
ゲスト
結合: 23年前
投稿: 123
Topic starter  

>Microsoft提供のヘッダーファイルで無いなら
>ファイル名がわかっても多分意味ないですね。
はじめからあるViewクラスにもエラーが出ているみたいです。

>仮に_STD_BEGINを
>namespace std {
>に置き換えたらどうなるのだろう。

同様のエラーになり、変わりませんでした。

>#include <functional>
>#include <xtree>

>でインクルードしているヘッダーファイルの方に問題があったりして。
>VC++6.0ってC++の準拠率が低いからそれで引っかかっているのかも。

このようなヘッダーファイルはリソース、ヘッダーファイルのどこにも書いてはいない
のですが。

少ない情報で解答してもらってすいませんでした。


返信引用
PATIO
(@patio)
Famed Member
結合: 4年前
投稿: 2660
 

まさかと思いますが、
プロジェクトの設定を弄ったりしてませんか?

コンパイラに /TCとか指定してません?

新たにヘッダファイルを作成してその中で

namespace AAA {
int a;
};

としてエラーが起こっていないcppファイルにインクルードすると?


返信引用
はな
 はな
(@はな)
ゲスト
結合: 23年前
投稿: 123
Topic starter  

すいません、勉強不足でよくわからなかったのですが、コンパイラは標準のものを使用
していると思います。

>新たにヘッダファイルを作成してその中で

>namespace AAA {
>int a;
>};

>としてエラーが起こっていないcppファイルにインクルードすると?

やり方がわからずできませんでした。せっかくのアドバイスなのに本当にすいません。


返信引用
PATIO
(@patio)
Famed Member
結合: 4年前
投稿: 2660
 

その様子だとプロジェクト弄ったりはしてなさそうですが。
問題のプロジェクトは自分で作成したものですか?
それとも人からもらったもの?
他に新たに新しいプロジェクトを作成してビルドしても
同じ事が起こりますか?


返信引用
はな
 はな
(@はな)
ゲスト
結合: 23年前
投稿: 123
Topic starter  

どちらかといえばもらったものですね。それをファイル名等を変更して見ているといっ
たとこでしょうか。

新しくプロジェクトを立ち上げて何も書かない状態でコンパイルすると普通にエラー、
警告なしに実行できました。


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 22年前
投稿: 1301
 

> どちらかといえばもらったものですね。それをファイル名等を変更して見ているといっ
> たとこでしょうか。

ならば問題は変更の前後でなにが違うか、だ。

class/struct のケツに ; 付け忘れた。とかそんなくだらん原因のよな希ガス。


返信引用
PATIO
(@patio)
Famed Member
結合: 4年前
投稿: 2660
 

となるとそのプロジェクトの設定を疑った方がいいかも。

新しく作成したエラーのないプロジェクトの設定を開いて
C/C++タブのプロジェクトオプション欄に/TCを追記したら
同じエラーが起こるか試して見ては?


返信引用
固定ページ 1 / 2

返信する

投稿者名

投稿者メールアドレス

タイトル *

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