API Basic Concatenation ko - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki
String + / &
ClassicUO โข Basic
- ๋๋ Basic ํธํ ํ๊ธฐ &๋ก ํ ์คํธ๋ฅผ ์ฐ๊ฒฐํฉ๋๋ค. ์๋์ด๋ ์ขํ ๊ฐ์ ์ซ์๋ CStr๋ก ๋ช ์์ ์ผ๋ก ๋ณํํ ๋ค ๋ฉ์์ง์ ์ถ๊ฐํ์ธ์.
์ ํํ ๊ตฌ๋ฌธ
leftText + rightText
leftText & rightText
"label" & CStr(number)
๋งค๊ฐ๋ณ์
leftTextโ ์ผ์ชฝ ํ ์คํธ: ๋ฆฌํฐ๋ด, String ๋ณ์ ๋๋ ํ ์คํธ๋ก ๋ฐ๊พผ ํจ์ ๊ฒฐ๊ณผ์ ๋๋ค.rightTextโ ์ค๋ฅธ์ชฝ ํ ์คํธ์ ๋๋ค. CStr(number)๋ ์ซ์๋ฅผ ๋ฐ๊พธ๊ณ CStr(Unit)์ ๋น ๋ฌธ์์ด์ ๋๋ค. ๊ณต๋ฐฑ์ด๋ ์ฝ๋ก ๋ฑ ๊ตฌ๋ถ์๋ ์ง์ ๋ฃ์ผ์ธ์.
๋ฐํ๊ฐ
์์ชฝ์ด String์ด๋ฉด String์ด๋ฉฐ ์ฑ๊ณต ํ๋๊ทธ๊ฐ ์๋๋๋ค. ์ด ์์ง์ &๋ฅผ +๋ก ๋ฐ๊พธ์ด ๊ฐ์ ๊ท์น์ ์ฌ์ฉํฉ๋๋ค. ์ซ์๋ผ๋ฆฌ๋ ๋ํ๋ฏ๋ก 2 & 3์ Integer 5์ ๋๋ค. String๊ณผ ์ซ์๋ฅผ ์์ผ๋ฉด ์ค๋ฅ์ด๋ฉฐ VB์ ์์์ ํ ์คํธ ๋ณํ๊ณผ ๋ค๋ฆ ๋๋ค.
๋์
- ์์ชฝ์ ์์๋๋ก ๊ณ์ฐํ์ฌ ์ฐ๊ฒฐํ๊ณ ์ฐ์ ์ฐ๊ฒฐ์ ์ผ์ชฝ๋ถํฐ ์ฒ๋ฆฌํฉ๋๋ค. ์ซ์ ๊ณ์ฐ์ ๊ดํธ๋ก ๋ฌถ๊ณ ๊ฒฐ๊ณผ๋ฅผ ๋ณํํ ๋ค ์ฐ๊ฒฐํ์ธ์.
- ๊ตฌ๋ถ์, ๊ณต๋ฐฑ, ๋ฐ์ดํ, ์ค๋ฐ๊ฟ์ ์๋ ์ถ๊ฐํ์ง ์์ต๋๋ค. ๋ฌธ์์ด ๋ฆฌํฐ๋ด ์์ &๋ ๊ทธ๋๋ก์ด๋ฉฐ ๋ ผ๋ฆฌ ํ ํฐ &&๋ AND๋ก ์ ์ง๋ฉ๋๋ค.
- CStr์ ํด๋ผ์ด์ธํธ ์ธ์ด์ ๋ฌด๊ดํ ์ซ์ ํ์์ ์ฐ๊ณ ์์์ ์ ๋ง์นจํ์ ๋๋ค. ๋ณํ๊ณผ ์ฐ๊ฒฐ ์์ฒด๋ ์ถ๋ ฅํ๊ฑฐ๋ ์ ์กํ์ง ์์ต๋๋ค. ํ์ํ๋ฉด ๊ฒฐ๊ณผ String์ ๋ค์ API์ ๋๊ธฐ์ธ์.
- ๋ฌธ์์ด์ ๋ถ๋ณ์ด๋ฏ๋ก ์ฐ๊ฒฐ์ ์๋ณธ ๋ณ์๋ฅผ ๋ฐ๊พธ์ง ์๊ณ ์ ๊ฐ์ ๋ง๋ญ๋๋ค. ํฐ ๋ฌธ์์ด์ ๊ณ์ ๋๋ฆฌ๋ฉด ๋ด์ฉ์ด ๋ณต์ฌ๋๋ฏ๋ก ๋ฃจํ๋ง๋ค ๋ณด๊ณ ์ ์ ์ฒด๋ฅผ ๋ค์ ๋ง๋ค๊ธฐ๋ณด๋ค ํ์ํ ์ถ๋ ฅ๋ง ๋ง๋์ธ์.
์์
1. ์๋์ ๋ ์ด๋ธ ์ถ๊ฐ
# amount=50์ Integer์ด๊ณ CStr(amount)๋ "50"์
๋๋ค. "Items: "์๋ ์ฝ๋ก ๊ณผ ๋ ๊ณต๋ฐฑ์ด ์์ต๋๋ค. Main์ "Items: 50"์ ๋ฐํํ๋ฉฐ ์๋ ์ถ๋ ฅํ์ง ์์ต๋๋ค.
Option Explicit On
SUB Main()
VAR amount = 50
RETURN "Items: " & CStr(amount)
END SUB
๋งค๊ฐ๋ณ์ ๋ฐ ์คํ ์ค๋ช :
amount=50์ Integer์ด๊ณ CStr(amount)๋ "50"์ ๋๋ค. "Items: "์๋ ์ฝ๋ก ๊ณผ ๋ ๊ณต๋ฐฑ์ด ์์ต๋๋ค. Main์ "Items: 50"์ ๋ฐํํ๋ฉฐ ์๋ ์ถ๋ ฅํ์ง ์์ต๋๋ค.
2. ์ฌ์ฌ์ฉํ ์์ ํ ํจ์
# Label์ name="ore", amount=3์ ๋ฐ์ ์ด๋ฆ, ์ง์ ๋ฃ์ ์ฝ๋ก , CStr(amount)๋ฅผ ์ฐ๊ฒฐํฉ๋๋ค. ์ ์ฒด ํจ์๊ฐ "ore:3"์ Main์ ๋ฐํํ๋ฉฐ ๋ค๋ฅธ ์ด๋ฆ๊ณผ ์๋์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
Option Explicit On
FUNCTION Label(name, amount)
RETURN name + ":" + CStr(amount)
END FUNCTION
SUB Main()
RETURN Label("ore", 3)
END SUB
๋งค๊ฐ๋ณ์ ๋ฐ ์คํ ์ค๋ช :
Label์ name="ore", amount=3์ ๋ฐ์ ์ด๋ฆ, ์ง์ ๋ฃ์ ์ฝ๋ก , CStr(amount)๋ฅผ ์ฐ๊ฒฐํฉ๋๋ค. ์ ์ฒด ํจ์๊ฐ "ore:3"์ Main์ ๋ฐํํ๋ฉฐ ๋ค๋ฅธ ์ด๋ฆ๊ณผ ์๋์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
3. ๊ณ์ฐ ํ ์ฐ๊ฒฐ
# CStr(2+3)์ 5๋ฅผ ๋จผ์ ๊ณ์ฐํ๊ณ "5"๋ก ๋ฐ๊ฟ๋๋ค. ๋ ๋ฒ์งธ ๋ฆฌํฐ๋ด์ ์ธ๋ฏธ์ฝ๋ก , ๊ณต๋ฐฑ, A&B๋ ์ ์ง๋ฉ๋๋ค. Main์ "Total: 5; literal: A&B"๋ฅผ ๋ฐํํฉ๋๋ค.
Option Explicit On
SUB Main()
RETURN "Total: " & CStr(2 + 3) & "; literal: A&B"
END SUB
๋งค๊ฐ๋ณ์ ๋ฐ ์คํ ์ค๋ช :
CStr(2+3)์ 5๋ฅผ ๋จผ์ ๊ณ์ฐํ๊ณ "5"๋ก ๋ฐ๊ฟ๋๋ค. ๋ ๋ฒ์งธ ๋ฆฌํฐ๋ด์ ์ธ๋ฏธ์ฝ๋ก , ๊ณต๋ฐฑ, A&B๋ ์ ์ง๋ฉ๋๋ค. Main์ "Total: 5; literal: A&B"๋ฅผ ๋ฐํํฉ๋๋ค.