stdin
이 에 의해 지정된 일반 stdio 관용구를 알고 있습니다. 파일 이름은 "-"입니다.C++ : cin을 ifstream 변수에 할당 하시겠습니까?
if ((strcmp(fname, "-"))
fp = fopen(fname);
else
fp = stdin;
ifstream
인스턴스로 이것을 수행하는 가장 좋은 방법은 무엇입니까? 나는 에게 수업의 일환으로 ifstream
을 가지고 코드의 비트를받은 나는 가 해당 작업을 수행하는 코드를 추가 할 같은 일을 거라고 :
if (filename == "-")
logstream = cin; // **how do I do this*?*
else
logstream.open(filename.c_str());
감사합니다 ... 이것은 리눅스와 osx에 이식 가능해야하므로/dev/stdin입니다! (한숨) –
이것은 아무도 앉아서 중간 정도의 괜찮은 C++ 라이브러리 세트를 만든 방법을 보여줍니다. (만약 많은 버전 화 문제가 없다면 boost라고 부릅니다.) –
FWIW는'reset'에'noop()'를 전달하는 대신 C++ 11을 사용하여 (그리고 구조체를 정의하는 것) '[] (...) {}'은 그것을합니다. – akim