2017-07-08 11 views
0

を起動することはできません。文字列は、私は、次のコンパイルエラーを取得していますパラメータ宣言

bool isRotated(string str1, string str2) 
{ 

} 

'string' がパラメータ宣言

を開始することはできません)

を期待
含ま

ヘッダファイルは以下のとおりです。

iostream.h 
string.h 

は、私がここで何かが足りないのですか?

+0

[最小、完全、および検証可能な例](https://stackoverflow.com/help/mcve)をご提供ください。これは物事の数によって引き起こされる可能性があります。あなたのコードが短い場合は、機能 – Fureeish

+0

'std :: string'だけでなく、投稿してください。 – Serge

+3

iostream.h? 20歳の本からC++を学んでいますか? – Blastfurnace

答えて

1

C++標準ライブラリに完全修飾型名stringはありません。すべての標準ライブラリタイプはstd名前空間で宣言されているので、探しているタイプの名前はstd::stringです。また、std::string<string>を宣言するヘッダーは含まれていません(<string.h>はC++標準ライブラリに含まれているC標準ライブラリの一部と全く異なるヘッダです)。

P.S. <iostream.h>ヘッダーは標準化されていませんが、標準化前に一部のコンパイラで使用されていました。あなたは<iostream>を探しています。ただし、あなたの例ではそのヘッダからは何も使用しません。

3

C++ *にiostream.hでもstring.hも存在せず、タイプはstd::stringとなります。

あなたは非常に古いリソース(私たちが1998年以来実際にC++と呼んでいるものを遥かに凌駕する)から学んでいるようです。

#include <string> 

bool isRotated(std::string str1, std::string str2) 
{ 
} 

* Pedantsはstring.hはCとの互換性のために含まれていますが、より良いcstringとして知られており、ここで使用するように意図されているすべて同じヘッダにかかわらず、ではないことに注意します。

+0

私はC++の長い時間を学び、ちょうど今小さなコードを書いて始めました...ありがとう –

+0

@ S.Kartik:最高のピックアップ[良い本](http://stackoverflow.com/questions/388242/the)あなたが多くのように見逃してしまったため、本書のガイドラインとリストを参照してください。 –

+0

ありがとうございます。あなたの入力をありがとう、ありがとう! –

関連する問題