0

同じ名前空間の関数を使用して関数をクエリします。関数を呼び出すにはどうすればよいですか? エラーが発生し続けているようです。

例えば:

// in the .h files
namespace helper{ 
    void helper1();
    void helper2();
}

// in the cpp files
namespace helper{
    void helper1() { 
      // blah blah blah
    }

    void helper2() {
      // blah blah blah
      helper1();    // return some results from helper1
    }
}

上記のコードは、関数が見つからないというエラー結果を返しますhelper1。私が間違ったことをしたことはありますか?

ご協力いただきありがとうございます!

4

1 に答える 1

0

正しい質問をしていると確信していますか? これは私が持っているもので、正常に動作します:

// this is helper.cpp
#include<iostream>

#include "helper.hpp"

namespace helper{
void helper1() { 
  std::cout<<"calling helper 1"<<std::endl;
}

void helper2() {
  std::cout<<"calling helper 2"<<std::endl;
  helper1(); 
}
}

int main() {
  helper::helper2();
  return 0;
}

およびヘッダーファイル

//this is helper.hpp
namespace helper{ 
void helper1();
void helper2();
}

を使用してコンパイル

g++ helper.cpp -ansi -Wall -Wextra -pedantic

警告を返さず、利回り

$ ./a.out
calling helper 2
calling helper 1
于 2013-10-17T03:52:29.647 に答える