• 締切済み

グローバル関数をmainの後で定義する

VC++6.0です。 mainの中で、グローバル関数を使いたいのですが、 そのグローバル関数の中で、mainの中で生成されたclassを 使用しているので、 グローバル関数を先に定義しておくことができません。 どのようにしたらよいのでしょうか? 「この関数は、後で定義するよ。」という内容の宣言があったような気がするのですが。

みんなの回答

回答No.3

> これでコンパイルとおりますか? > うちの環境だとはねられちゃうんですが。 通りますよ。(VC++6) #include <iostream> int main() { void global_func(int,char); // 宣言(これのこと?) global_func(1,'a'); // コール return 0; } void global_func(int x, char y) { // 定義 std::cout << "x=" << x << " ,y=" << y << std::endl; }

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.2

class A { ・ ・ ・ }; void Func( A * ); int main() { A cA; Func( &cA ) } void Func( A * pA ) { } のように、関数のプロトタイプ宣言をmainの前に、さらにその前にクラスの定義を記述すればOKです。

回答No.1

int main() { void global_func(int,char); // 宣言(これのこと?) ... global_func(1,'a'); // コール ... } void global_func(int x, char y) { // 定義 ... }

noname#108554
質問者

補足

これでコンパイルとおりますか? うちの環境だとはねられちゃうんですが。 しかたないので、とりあえず、mainの中にglobal関数を ダイレクトに書いてます(見ずらい・・・)