0

私はいくつかのJavaコード(コンストラクター)を持っています

RecursiveDescentParser
(
  std::string inputStream, 
  bool fileService, 
  std::string filePathName, 
  std::ofstream writer
)
{
  input_ = inputStream;
  tokenizer_ = new Tokenizer(inputStream);
  if (fileService == true){
      error = new ErrorHandling(fileService, std::move(writer));
  }
  else{
      error = new ErrorHandling(fileService, std::ofstream());
  }     
  compiled_ = "";
}

Tokenizer *tokenizer_;

std::string input_, compiled_;

C++ 内で呼び出しをエミュレートしたい

RecursiveDescentParser *parser = new RecursiveDescentParser
(
  stream, 
  false, 
  null, 
  null
);

ポインター引数を使用する場合

std::string *str; std::ofstream *out

nullptr を渡すことはできますが、ポインター引数を使用しないことを選択した場合、null を渡すことはできません。std::string と std::ofstream に null を渡すことをシミュレートするにはどうすればよいですか?

4

4 に答える 4

1

これは私があなたの使い方を変える方法です:

RecursiveDescentParser
(
  std::string inputStream, 
  bool fileService = false, 
  std::string filePathName = "", 
  std::ofstream* writer = NULL
)

RecursiveDescentParser *parser = new RecursiveDescentParser(stream);
于 2013-04-05T13:44:56.747 に答える