How would one go about casting a ifstream into a istream. I figure since ifstream is a child of istream I should be able to do so but I have been having problems with such a task.

std::istream & inputStr = std::cin;
  std::ostream & outputStr = std::cout;
  if(argc == 3){
    std::fstream inputFile;
    inputFile.open(argv[1], std::fstream::in);
    if(!inputFile){
        std::cerr << "Error opening input file";
        exit(1);
    }
    inputStr = inputFile;
.....
}
Edit
Report