double[] ux, buffer;
ux = new double[200];
buffer = new double[200];
์ด๋ ๊ฒ ์ ์ธํ ๋ ๋ฐฐ์ด์ด ์๊ณ , ์๋์ ๊ฐ์ด ux์ ์ด์ ๊ฐ์ buffer์ ๋ฃ์ ๋ค์ ux๋ ์๋ก์ด ๊ฐ์ ๊ฐ๊ณ ย ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋น๊ตํ๋ ํํ์ ์ฝ๋๋ฅผ ๋ง๋ค์๋๋ฐ,
buffer = ux;
calc(ux);
check = buffer[100] - ux[100];
๊ฒฐ๊ณผ๋ก check์ ๊ฐ์ด ํญ์ 0์ด ๋์ค๋ ๊ฒ์ ๋ณด๋ฉด,ย ux์ ๊ฐ์ด buffer๋ก ๋ณต์ฌ๋๋ ๊ฒ์ด ์๋๋ผ ux์ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๊ฐ buffer์ ์ฃผ์๋ก ๋ณต์ฌ๋๋ ๊ฒ ๊ฐ์.
buffer ๋ฐฐ์ด์ ๊ฐ์ ux ๋ฐฐ์ด์ ์ด์ ๊ฐ์ ๊ฐ์ ธ์ผํ๋๋ฐ, ์ ๋ ๊ฒ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๊ฐ ๋์ด๊ฐ๋ฉด ux๊ฐ์ด ๋ณํ ๋ ๊ฐ์ด ๋ณํจ;
์ง๊ธ์ ์ดย ๋ฌธ์ ๋ฅผ ์๋์ฒ๋ผ for ๋ฃจํ๋ฅผ ์จ์ ํ๋ํ๋ ๋ณต์ฌํ๋ ์์ผ๋ก ํด๊ฒฐํ๊ณ ์๋๋ฐ .. ์ข ๋ ๋์ ๋ฐฉ๋ฒ์ด ์์?
for(int n = 0 ; n < 200 ; n++) {
buffer[n] = ux[n];
}
calc(ux);
check = buffer[100] - ux[100];
๋ณต์ฌ๊ฐ ๋ฌธ์ ๊ฐ ์๋๋ผ ๋์ด buffer = ux;๋ฅผ ํ์๊ฐ buffer๋ ux๋ฅผ ์ฐธ์กฐํ๋๊ฑฐ์์..๋ค๋ค ์ฐฉ๊ฐํ๋๊ฒ array๋ ์ปจํ ์ด๋์ค ํ๋์์..๊ทธ๋ฆฌ๊ณ ์ปจํ ์ด๋๋ผ๋ ๊ฒ ์์ฒด๊ฐ ์๋ class์ ๋์ด class A ,class B๊ฐ ์์๋ a=bํ๋ ๊ฑฐ๋ ๊ฐ์๊ฑฐ๋ผ๊ณ ๋ณด์๋ฉด๋ฉ๋๋ค..
Array.Copy(ux, buffer, 200); ์ด๋ฉด ๋์ง ์๊ฒ ์ด๋์นด
์์งํ ์ ๋ฐ๊ฑด ๊ทธ๋ฅ for๋ฌธ๋๋ ค์ ๊ฐ์ ์ง์ด๋ฃ์ผ๋ฉด๋ฉ๋๋ค..
์ซ์๊ฐ ์ข ์ปค์ง๋ฉด? 10๋ง ์ ๋๊น์ง
๊ทธ๋๋ ๋ณ ์๊ด ์์ต๋๊น?? ์๋ ๋๋ฌธ์ธ๋ฐ .. ๋ณ ๋ฌธ์ ์์ ๊ฒ ๊ฐ๊ธฐ๋ ํ๊ณ ์๋๊ฒ ๊ฐ๊ธฐ๋ํ๊ณ ..
์ ๋ฐ ๊ทธ๋ฅ ๋จ์๋์ ์ด๋ฉด 10๋ง๊ฐ์ฏค์ด์ผ ๊ป์ด์ ธ...๋ฌธ์ ๋ ์ด๋ป๊ฒ ์ฐ๋๋์ฃ ...
Array์ Cloneํจ์๊ฐ ์๋ค์..์ด๊ฑฐ ์๋ง๋ ๊ฐ์ ๋ณต์ฌ๋ ๊ฑฐ์์..์ฐธ์กฐ๋ ๋น์ฐํ ์๋๊ฒ ๊ณ ..๊ทธ๋ฅ buffer = ux.Clone() as double[];ํ์๋ฉด ๋ ๋ฏ..๋ญ ์ด๊ฑฐ๋ ์ ๊ฑฐ๋ ๋ณ๋ก ๋ค๋ฅผ๊ฒ ์์ด๋ณด์ด๊ธดํ์ง๋ง..
์ํ ใณใณ ์ด๋ฐ๋ฐ ๊ฐ๊ฐ์ด ๋ณ๋ก ์์ด์ 10๋ง๊ฐ๊ฐ ํฐ ์์ธ์ง ์์ ์์ธ์ง ๊ฐ๋ ์ด ์๋์ ํญ์ ๊ณ ๋ฏผํ์๊ฑฐ๋ ์.
์ซ์ ํ 10๋ง๊ฐ ๋ผ๋ ๋ณต์ฌํ๋๋ฐ 0.01์ด๋ ์๊ฑธ๋ฆฌ๋ ๊ทธ๋ฐ๊ฑฐ์ ํฌ๊ฒ ์ ๊ฒฝ ์์ฐ์ ๋ ๋๋ฏ