Предположим, что у нас есть DLL, и в ней должен быть глобальный массив, который будет экспортироваться. Дело в том, что мы хотим инициализировать его, читая некоторый контент из файла, поэтому лично я не считаю себя другимчем поместить его в структуру, чтобы иметь возможность инициализировать с помощью конструктора:
struct Construction{
public:
Construction(){
//do the initialization thing and read the needed data from the file
}
SomeType sTArray[100];
};
__declspec(dllexport) Construction obj();
Теперь, где он будет использоваться, программист может инициализировать ссылку на него, а затем использовать ссылку, как показано ниже:
SomeType (&arrayRef)[100]=obj.sTArray;
Теперь вы думаете, что я неправ в любом контексте?