essayer de référencer une fonction supprimée

Je suis en train d'apprendre à propos de la classe fstream et je vais avoir quelques difficultés. J'ai créé un couple de fichiers txt, l'un avec une blague et l'autre avec une punchline (joke.txt) et (punchline.txt) juste pour le plaisir de la lecture et l'affichage de contenus. Je demande à l'utilisateur pour le nom de fichier et s'il doit l'ouvrir, effacer les drapeaux alors lire le contenu. mais je ne peux même pas tester ce qu'il lit dans car je suis actuellement à obtenir des erreurs relatives à une suppression de la fonction mais je ne sais pas ce que cela signifie

erreur 1:

"IntelliSense: function "std::basic_ifstream<_Elem, _Traits>::basic_ifstream(const std::basic_ifstream<_Elem, _Traits>::_Myt &) [with _Elem=char, _Traits=std::char_traits<char>]" (declared at line 818 of "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\fstream") cannot be referenced -- it is a deleted function

la deuxième erreur est exactement le même, mais pour la 2ème fonction (displayLastLine())

et de l'erreur 3:

Error   1   error C2280: 'std::basic_ifstream<char,std::char_traits<char>>::basic_ifstream(const std::basic_ifstream<char,std::char_traits<char>> &)' : attempting to reference a deleted function

et voici mon code:

#include "stdafx.h" 
#include <string>    
#include <iostream>  
#include <fstream>   
using namespace std; 
void displayAllLines(ifstream joke);
void displayLastLine(ifstream punchline);
int main()          
{
string fileName1, fileName2;
ifstream jokeFile, punchlineFile;
//Desribe the assigned project to the User
cout << "This program will print a joke and its punch line.\n\n";
cout << "Enter the name of the joke file (ex. joke.txt): ";
cin  >> fileName1;
jokeFile.open(fileName1.data());  
if (!jokeFile)
{
cout << "  The file " << fileName1 << " could not be opened." << endl;
}
else
{   
cout << "Enter name of punch line file (ex. punchline.txt): ";
cin  >> fileName2;
punchlineFile.open(fileName2.data());  
if (!punchlineFile)
{
cout << "  The file " << fileName2 << " could not be opened." << endl;
jokeFile.close();
}
else
{   
cout << endl << endl; 
displayAllLines(jokeFile);
displayLastLine(punchlineFile); 
cout << endl;
jokeFile.close();
punchlineFile.close();
}
}
//This prevents the Console Window from closing during debug mode
cin.ignore(cin.rdbuf()->in_avail());
cout << "\nPress only the 'Enter' key to exit program: ";
cin.get();
return 0;
}
void displayAllLines(ifstream joke)
{
joke.clear();
joke.seekg(0L, ios::beg);
string jokeString;
getline(joke, jokeString);
while (!joke.fail())
{
cout << jokeString << endl;
}
}
void displayLastLine(ifstream punchline)
{
punchline.clear();
punchline.seekg(0L, ios::end);
string punchString;
getline(punchline, punchString);
while (!punchline.fail())
{
cout << punchString << endl;
}
}

source d'informationauteur jacksonSD