@Thamed nie no napisanie n=0 to głupi pomysł. Bo teraz masz tablicę na 0 elementów a chyba nie o to chodziło? ;]
no Tak :)
#include"source.cpp"
struct wymiar
{
short n = 0;
short *w = new short[n];
void wpisz(short n, short*w)
{
cout << "Wpisz" << endl;
for (int i = 0; i < n; i++)
{
cin >> *(w + i);
}
}
void wypisz(short n, short *w)
{
cout << "Prosze" << "\n";
for (int i = 0; i < n; i++)
{
cout <<"Współrzędna "<<(i+1)<<": "<< *(w + i) << "\n";
}
}
void translacja(short n, short *w)
{
short *m = new short[n];
cout << "Prosze podaj wektor, którym chcesz wykonać translacje" << "\n";
for (int i = 0; i < n; i++)
{
cin>>*(m+i);
}
for (int i = 0; i < n; i++)
{
(*(w + i))+= (*(m + i));
}
for (int i = 0; i < n; i++)
{
cout << "Współrzędna " << (i + 1) << "po translacji: " << *(w + i) << "\n";
}
}
};
int main()
{
setlocale(LC_CTYPE, ".1250");
wymiar A;
cin >> A.n;
A.wpisz(A.n, A.w);
cout << endl;
A.wypisz(A.n, A.w);
cout << endl;
A.translacja(A.n, A.w);
system("Pause");
return 0;
}
działa jak należy :) może się deklaruje, ale nie zajmuje dużo miejca, więc można przeoczyć, a dalej deklaruje się tak jak powinna, przy inicjalizacji.