ウィザードバーのメンバ関数

解決


名古屋  2005-01-28 18:11:58  No: 56189

ウィザードバーのメンバ関数で、
メンバ関数を指定することで、
コード内の指定のメンバ関数部に
移動するかと思います。
最初はうまく動作していましたが、
開発を進めるうち、一部の関数で
移動できなくなり、下記のメッセージが
出てきます。

「この関数の定義が見つかりません。ClassViewは最低一度保存
されるまで関数の定義を見つけることができません」

プログラムは正常に動作している状態
ではありますが、開発効率が良くない
ので、対処方法解かる方ご教授願います。


てつや  2005-01-28 20:42:18  No: 56190

プロジェクトを閉じて***.ncbファイルを削除してから、
再度プロジェクトを開きなおす。

この話題はいろいろな所の過去ログで見かけますが、知らないと検索条件が
見つからないんですよね。
ncb clw 等で検索してください。


名古屋  2005-01-28 22:22:28  No: 56191

ありがとうございます。

ncbファイルを削除し再度プロジェクトを
立ち上げてみました。
しかし、問題が改善されませんでした。

ちょっと関係ないかもしれませんが、
1つの関数で記述可能なコードの行数に
制約はあるのでしょうか?

移動できない関数のコードの桁数は、
600行と若干多いのが気になっています。


てつや  2005-01-28 22:59:09  No: 56192

>ncbファイルを削除し再度プロジェクトを
>立ち上げてみました。
>しかし、問題が改善されませんでした。
はずしましたか。すみません。
1.
ncbに加えてclwも同時に削除して、立ち上げてからメニューのクラスウィザードを
選択、"再構築しますか?"というメッセージに"はい"と答えると直る事があります。
2.
optファイルも削除してみる。(クラスビューのフォルダ構成がなくなってしまいますが)
なんて方法もありますが、必ず直るとも限りません。
一応バックアップを取ってから試してみてください。


名古屋  2005-01-28 23:57:28  No: 56193

ありがとうございます。

ちょっともう一点問題があって、インテリセンス機能が
効かなくなるという問題だったのですがそちらは下記
URLにて解決しました。

http://live.under.jp/todashou/tips/VC++/intellisense.html

ここで、ご指摘のあったclw・optファイルを削除し、クラスウィザード
選択後、再構築しているはずですが、こちらの問題は解決しません。
何か他に対策はあるでしょうか?


てつや  2005-01-29 00:18:37  No: 56194

うーん、だめですか。
あと関数定義の仮引数を省略するやつがいると、見つけられなかった事が
あったような気がします。
//**.h
class A
{
   ...
   void Func(int,int) ;
}
//**.cpp
void A::Func(int a , int b )
{
  ....
}
こんなやつ。


これはあれだ  2005-01-29 00:27:11  No: 56195

> ので、対処方法解かる方ご教授願います。

VC6のそれらの機能はその程度の精度で普通です。(環境書いてないけど文脈で判断)

VC.NET2003はその点快適です。VC6ももうMSの保証対象外(有償延長除く)ですから
移行がお勧めです。

> 移動できない関数のコードの桁数は、
> 600行と若干多いのが気になっています。
(バックアップを取って)この関数の中を消してから再試行してみれば切り分けできるかも。


名古屋  2005-01-29 01:41:09  No: 56196

仮引数の点で自分のコードを確認しました。
ご指摘の仮引数の省略はありませんでしたが
呼び出せない関数に共通する部分がありました。

仮引数の型に、列挙型のデータを指定している
関数が呼び出せないことがわかりました。

>VC6のそれらの機能はその程度の精度で普通です。(環境書いてないけど文脈で判断)

VC++6です。これから気をつけます。

>(バックアップを取って)この関数の中を消してから再試行してみれば切り分けできるかも。

そうですね。その方法で確認できました。
600行を空にしても関数に移動できませんでした。

いろいろありがとうございました。


名古屋  2005-01-29 01:42:07  No: 56197

解決チェックわすれ


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加