これはあなたが望むものですか?これは、基本的な例の1つであるhereから適応されています。
#include <fstream>
#include <iostream>
#include <string>
#include <ncurses.h>
int main()
{
std::ifstream inputfile("filew.txt");
std::string line;
initscr();
if(inputfile.is_open())
{
while (inputfile >> line)
{
printw("%s\n", line.c_str());
}
} else
{
printw("didnt find file `file.txt`\n");
}
refresh();
std::cin.ignore();
endwin();
}
我々はC++の世界であるとして、私は、例外は私たちがendwin
を使用してクリーンアップせずにプログラムを終了することがありますことを少し怖がっだろう。だから私はおそらく例外安全にするために単純なRAIIラッパーを追加するだろう。
#include <fstream>
#include <iostream>
#include <string>
#include <ncurses.h>
class ncursewrap
{
public:
ncursewrap() { initscr(); }
~ncursewrap() { endwin(); }
void refresh() { ::refresh(); }
};
int main()
{
std::ifstream inputfile("file.txt");
std::string line;
ncursewrap nc;
if(inputfile.is_open())
{
while (inputfile >> line)
{
printw("%s\n", line.c_str());
}
} else
{
printw("didnt find file `file.txt`\n");
}
nc.refresh();
std::cin.ignore();
}
はとても喜んで、我々は[祝福]を持っている(https://pypi.python.org/pypi/blessings) –
本当にありがとうございました!これは本当に役に立ちました。ラッパーは常にncursesで使用する必要がありますか? – Char
事を簡素化するべきである少数が既に存在しない場合、私は驚くだろう。デストラクタでクリーンアップするラッパーの保護がどこにあるのかをよく把握することは非常に難しいので、おそらく良い考えです。 –