3

さて、暗号化されたテキストをファイルに書き込もうとしています。

何らかの理由で、このスコープで宣言されていないというコンパイル エラーが発生します。

私のencryption.cppファイルは次のとおりです。

#include <iostream>
#include <fstream>
#include <string>

class encrypt{
    public:
        static void cryptText(std::string newpass)
        {
            int x = newpass.size();

            int output[x -1];

            for(int i = 0; i <= x -1; i++)
            {
                output[i] = (int)newpass[i];
                std::cout << char(output[i] + x);
                //Here I am trying to write output onto the file. For some reason, though,
                //I get the error.
                myfile.open ("passwords.thaddeus");
                myfile << output << std::endl;
                myfile.close();

            }

            std::cout << std::endl;

        }

};

ファイルを使用した入出力に関する cplusplus.com のドキュメントを見てきました。サンプル プログラムを Code::Blocks にコピーしたところ、完全に機能しました。しかし、試してみると、エラーが発生します。を入れたからおかしい。

4

3 に答える 3

8

myfile変数を宣言も定義もしていません。

したがって、現在のコンテキストには存在しないため、このエラーが発生しています。

コードのこの部分を見逃していますofstream myfile;

于 2013-10-16T13:29:25.177 に答える
5

どの言語の基本も見逃しています...あなたのmyfile定義はどこにありますか?

于 2013-10-16T13:27:34.907 に答える
4

まず、 を使用する必要がありますofstreamusing namespace std;

myfile次に、オブジェクトを宣言します。ofstream myfile;

一般的な経験則: 標準ライブラリには、宣言せずに使用するために「my」で始まる変数が含まれることはありません。

于 2013-10-16T13:31:03.003 に答える