Когда я создаю свою собственную структуру, говорю:
struct myStruct{
int data1;
int data2;
string data3;
}
Я могу инициализировать экземпляр типа myStruct следующим образом:
myStruct instance1;
Так что мой вопрос: почемучасто ли я вижу "struct", написанную во время инициализации struct? Может быть, это неточное утверждение, поэтому вот пример того, что я имею в виду:
/*This is a tiny program that checks
to see if a file exists in
the current working directory. */
#include <sys/stat.h>
#include <iostream>
using namespace std;
const string FILENAME = data.txt;
int main(){
struct stat fileStatus; //<-- HERE HERE HERE!
if (FileExists(FILENAME, fileStatus)){
cout << "File Does Exist" << endl;
}else{
cout << "File Does NOT Exist" << endl;
}
return 0;
}
bool FileExists(const string & fileName,struct stat & fileStatus){
bool fileDoesNotExist = stat (fileName.c_str(), &fileStatus);
return !fileDoesNotExist;
}
> LINE 13: struct stat fileStatus;
Это что-то, что было сделано в C по какой-то причине?
Что-то с макросом или typedef?
Я просто не понимаю, почему это такесть.