๋ฐ์ํ
๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
[javascript] ๋ก์ปฌ์ ์ ์ฅ๋ JSON ํ์ผ์ ์ฝ์ด์ค๋ ๋ฐฉ๋ฒ
[javascript] ๋ก์ปฌ์ ์ ์ฅ๋ JSON ํ์ผ์ ์ฝ์ด์ค๋ ๋ฐฉ๋ฒ
2022.03.02test.json(์์ ํ์ผ) TestFile = { "test": [ 1, 2, 3 ], "persons": [ { "name": "ํ๊ธธ๋", "age": 14 }, { "name": "์ต์ง์ฐ", "age": 31 } ] } ์ฌ๊ธฐ์ ์ฃผ๋ชฉํด์ผ ํ ๊ฒ์ ๊ธฐ๋ณธ์ ์ธ JSON ํฌ๋งท์ TestFile์ด๋ผ๋ ๋ณ์๋ช
์ ๋ถ์ฌ์ =๋ก ํ ๋นํด์ค์ผ javascript์์ ๋ก๋ํ ์ ์๋ค. JSON ํ์ผ ์ฝ์ด์ค๊ธฐ 1๋ฒ์งธ ๋ผ์ธ์ฒ๋ผ json์ด ์๋ ํ์ผ์ ๋ช
์ํด์ค ๋ค test.json์ ํ ๋นํด์ค ๋ณ์๋ช
์ผ๋ก JSON์ ์ฝ์ด์ ํ์ฑํ๋ค.
[MySQL] ํน์ Column ์/๋ค(์ค๊ฐ)์ Column ์ถ๊ฐ
[MySQL] ํน์ Column ์/๋ค(์ค๊ฐ)์ Column ์ถ๊ฐ
2022.02.24์์ฃผ ์จ์ผํ์ง๋ง ๊ทธ๋งํผ ์์ฃผ ๊น๋จน๋ ๊ตฌ๋ฌธ.. ๊ธฐ๋กํด๋๋ ์ต๊ด์ ๊ฐ์ :) ALTER TABLE `ํ
์ด๋ธ_์ด๋ฆ` ADD `์ถ๊ฐํ๋_์ปฌ๋ผ` column_type AFTER `ํด๋น_์ปฌ๋ผ`;
[Error] Pristine text '~~~' not present
[Error] Pristine text '~~~' not present
2022.01.11svn update ์ค ๋ธ๋ฃจ์คํฌ๋ฆฐ์ด ๋ ์ ์๋ ํฌ์คํ
์ ์งํํ์๋๋ฐ https://cjwoov.tistory.com/75 [Error] sqllite: database disk image is malformed. svn update๋ฅผ ํ๋ ์ค ์ปดํจํฐ ๋ธ๋ฃจ์คํฌ๋ฆฐ์ด ๋จ๊ณ ๋์ ์ฌ๋ถํ
์ดํ ๋ค์ update๋ฅผ ๋ฐ์๋ณด๋ ์๋์ ๊ฐ์ ์๋ฌ๊ฐ ๋ฐ์ํ์๋ค. sqllite: database disk image is malformed. ๋ค์๊ณผ ๊ฐ์ ๋ช
๋ น์ด๋ฅผ ํด๋น svn ํ๋ก์ .. cjwoov.tistory.com ์๋์ ๊ฐ์ด ์ถ๊ฐ์ ์ธ ์๋ฌ๊ฐ ๋ฐ์ํ์๋ค. Pristine text 'a31e85c8d4…089ed435e' not present ๋ค์ ๋ช
๋ น์ด๋ฅผ ํตํด ํด๊ฒฐํ์๋ค. sqlite3 .svn/wc.db "SELECT ..
[Error] sqllite: database disk image is malformed.
[Error] sqllite: database disk image is malformed.
2022.01.11svn update๋ฅผ ํ๋ ์ค ์ปดํจํฐ ๋ธ๋ฃจ์คํฌ๋ฆฐ์ด ๋จ๊ณ ๋์ ์ฌ๋ถํ
์ดํ ๋ค์ update๋ฅผ ๋ฐ์๋ณด๋ ์๋์ ๊ฐ์ ์๋ฌ๊ฐ ๋ฐ์ํ์๋ค. sqllite: database disk image is malformed. ๋ค์๊ณผ ๊ฐ์ ๋ช
๋ น์ด๋ฅผ ํด๋น svn ํ๋ก์ ํธ ํด๋์ cmd์ฐฝ์ ๋์๋๊ณ ์
๋ ฅํด๋ณด์๋ค. sqlite3 .svn/wc.db "pragma intergrity_check" // ~~ // ์ด๋์ ๋ฌธ์ ๊ฐ ์๋์ง ์ถ๋ ฅ ๋จ // ~~ sqlite3 .svn/wc.db "reindex nodes" sqlite3 .svn/wc.db "reindex pristine" // ์ดํ svn cleanup ์งํ ์ฐธ๊ณ ๋ฐ ์ถ์ฒ https://blog.naver.com/toytimes/220985010617
ํด๋ผ์ด์ธํธ์ ์น ๊ฒ์์ ํต์ ๊ด๊ณ(feat. ์ด๋ฒคํธํ์ด์ง)
ํด๋ผ์ด์ธํธ์ ์น ๊ฒ์์ ํต์ ๊ด๊ณ(feat. ์ด๋ฒคํธํ์ด์ง)
2021.03.30๋ณดํต ๊ฒ์์์ ํต์ ์ ํ๋ฆ์ ๋ค์๊ณผ ๊ฐ์ด ํด๋ผ์ด์ธํธ๊ฐ ์์ฒญํ๊ณ ์๋ฒ๊ฐ ๊ทธ์๋ํด ์๋ตํ๋ ๋ฐฉ์์ ๊ทธ๋ ๋ค๋ฉด ๋ฐ๋๋ก ์๋์ ๊ฐ์ด ์๋ฒ๊ฐ ๋จผ์ ์์ฒญํ๊ฑฐ๋ ๋ช
๋ นํ๋ ๊ฒฝ์ฐ๋ ์์๊น? ์๋ค๊ณ ๋ด๋ ๋ฌด๋ฐฉํจ. ๊ฒ์์ผ๋ก ์๋ฅผ ๋ค์๋ฉด ์์ ๊ฐ์ด ๋ด ๋ชฌ์คํฐ๊ฐ ์๋๋ฐฉ์ ๋ชฌ์คํฐ๋ฅผ ์ฃฝ์ฌ์ ์ฌํ๋ฅผ ์ป๋ ๊ฒฝ์ฐ๋ ์๋์ ๊ฐ๊ฒ ์ง? 1. ํด๋ผ์ด์ธํธ๊ฐ ํน์ ๋ชฌ์คํฐ(ํฌํ์ด๋)๋ฅผ ์ฌ๋ฅํ๋ค๊ณ ์๋ฒ์๊ฒ ์์ฒญํ๋ฉด, 2. ์๋ฒ๋ ์ง์ง๋ก ๊ทธ ๋ชฌ์คํฐ๊ฐ ์ฌ๋ฅ๋์๋์ง ๋ฐ์ดํฐ๋ฅผ ๊ฒํ ํด์ ํ์ธํ๊ณ ์ง์ง๋ก ์ฃฝ์๋ค๋ฉด? ์๋ฒ์ ์ ์ฅ๋์ด์๋ ๋ณด์ ํ
์ด๋ธ์ ๊ฒ์ํด(ํฌํ์ด๋ ์ฌ๋ฅํ์ ๋ ๋ณด์์ ๋ฌด์์ธ๊ฐ?) 3. ๊ทธ ๋ณด์์ ์๋ฒ ๋ด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅํ๊ณ ํด๋ผ์ด์ธํธ์ชฝ์ผ๋ก ๊ฒฝํ์น 300 ์ฌ๋ ธ๋ค๊ณ ์๋ตํด์ค 4. ํด๋ผ์ด์ธํธ๋ ๊ทธ ์๋ต์ ๋ฐ๊ณ ์๋ฒ๊ฐ ๋ณด๋ด์ค ๊ฒฝํ์น๋งํผ ๊ฒฝํ์น ์์นํ..
[C++11] keyword: static_assert
[C++11] keyword: static_assert
2020.07.231. ์ค๋ช
statc_assert๋ C++11์ ์ถ๊ฐ๋ ํค์๋๋ก, ์ธ์๋ก ์ ๋ฌ๋ ์์ด ์ฐธ์ธ์ง ์๋์ง ์ปดํ์ผ ํ์์ ํ์ธํ๋ค. static_assert์ ์ ๋ฌ๋ ์์ด ์ฐธ์ด๋ผ๋ฉด, ์ปดํ์ผ๋ฌ์ ์ํด ํด๋น ์์ ๋ฌด์๋๊ณ , ๊ฑฐ์ง์ด๋ผ๋ฉด ํด๋น ๋ฌธ์ฅ์์ ์ปดํ์ผ ์ค๋ฅ๋ฅผ ๋ฐ์์ํจ๋ค. static_assert( constant-expression, string-literal ); static_assert( constant-expression ); // C++17 (Visual Studio 2017 and later) ์ปดํ์ผ ํ์์ ์ํ๋๋ ํค์๋์ด๋ฏ๋ก ์ฒซ ๋ฒ์งธ ์ธ์ ์ญ์ ์ปดํ์ผ ํ์์ฌ ๊ฒฐ์ ๋ ์ ์๋ ์ธ์์ฌ์ผ ํ๋ค. static_assert(sizeof(void *) == 4, "64-bit code generation is..
[C++] keyword: enum class
[C++] keyword: enum class
2020.07.231. ์ค๋ช
C++03๊น์ง์ enum์ ์ฌ๋ฌ๊ฐ์ง ๋ฌธ์ ๋ฅผ ๊ฐ์ง๊ณ ์์๋ค. ๊ทธ๋์ ๊ทธ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์ C++11๋ถํฐ enum class๋ผ๋ ๊ฒ์ด ๋ฑ์ฅํ๋ค. ๊ธฐ์กด enum์ ๋ฌธ์ ์ ๋ค์ ๋ค์๊ณผ ๊ฐ๋ค. 1.1) ๊ธฐ์กด enum์ ๋ฌธ์ 1.1.1) ์ ๋ฐฉ ์ ์ธ ๋ถ๊ฐ๋ฅ ๊ธฐ์กด enum์ enumerator์ ์ด๋ค ๊ฐ์ด ๋ค์ด์์์ง ์ ์ ์์ผ๋ฉด ๊ทธ ํฌ๊ธฐ๋ฅผ ์ ํ ์ ์๊ธฐ ๋๋ฌธ์ ์ ๋ฐฉ ์ ์ธ์ ํ ์ ์๋ค. enum Fruit; // ์ ๋ฐฉ ์ ์ธ ๋ถ๊ฐ๋ฅ void main() { Fruit f = Apple; // ๋ฐ๋ผ์ ํด๋น enum์ ์ฐพ์์ ์์ } enum Fruit { Apple, Banana, Peach, }; ๋ฐ๋ผ์ ์์ ๊ฐ์ด ์ปดํ์ผ์ ํ ์ ์์ผ๋ฉฐ ๋งค ํ์ผ ์๋จ์ enum์ ์ ์ํด์ค์ผ ํ๋ ๋ถํธํจ์ด ์๋ค. 1.1.2) ..
[C++] keyword: static_cast, dynamic_cast, reinterpret_cast, const_cast
[C++] keyword: static_cast, dynamic_cast, reinterpret_cast, const_cast
2020.07.231. ์ค๋ช
C์ ์บ์คํธ ์ฐ์ฐ์๋ ๋ณ์์ ํ์
์ ๋ฐ๊ฟ ์ ์๋ค๋ ๋ฉด์์ ํธ๋ฆฌํ๊ณ ์ ์ฐํ ์ฝ๋ ์์ฑ์ ๋์์ค๋ค. ํ์ง๋ง ๋๋ฌด ๋ฌด์ฑ
์ํ๊ณ ๊ฐ๋ฐ์์๊ฒ ๋ชจ๋ ๊ฒ์ ๋ ๋๊ธด๋ค. C++์์๋ ์ข ๋ ์์ ํ๊ณ ๋ณํ ๋ชฉ์ ์ ๋ง๊ฒ ๊ณจ๋ผ ์ธ ์ ์๋ 4๊ฐ์ ์๋ก์ด ์บ์คํธ ์ฐ์ฐ์๋ฅผ ์ ๊ณตํ๋ค. static_cast reinterpret_cast dynamic_cast const_cat 1.1) static_cast static_cast ์ฐ์ฐ์๋ ์ง์ ํ ํ์
์ผ๋ก ๋ณ๊ฒฝํ๋๋ฐ ๋ฌด์กฐ๊ฑด ๋ณ๊ฒฝํ๋ ๊ฒ์ด ์๋๋ผ ๋
ผ๋ฆฌ์ ์ผ๋ก ๋ณํ ๊ฐ๋ฅํ ํ์
๋ง ๋ณํํ๋ค. void main() { const char* str = "korea"; int* pi; double d = 123.456; int i; i = static_cast(d); // ๊ฐ๋ฅ pi =..
[C++] keyword: noexcept
[C++] keyword: noexcept
2020.07.231. ์ค๋ช
๋ง์ฝ์ ์ด๋ค ํจ์๊ฐ ์์ธ๋ฅผ ๋ฐ์์ํค์ง ์๋๋ค๋ฉด noexcept ํค์๋๋ฅผ ํตํด ๋ช
์ํ ์ ์๋ค. int foo() noexcept {} foo ํจ์์ ๊ฒฝ์ฐ ์์ธ๋ฅผ ๋ฐ์์ํค์ง ์์ผ๋ฏ๋ก ์์ ๊ฐ์ด ํจ์ ์ ์ ์์ noexcept๋ฅผ ๋ฃ์์ผ๋ก์จ ๋ํ๋ผ ์ ์๋ค. #include using namespace std; int foo() noexcept { return 0; } int bar() noexcept { throw 1; } int main() { foo(); try { bar(); } catch (int x) { std::cout
[C++11] keyword: constexpr
[C++11] keyword: constexpr
2020.07.231. ์ค๋ช
constexpr ํค์๋๋ ๊ฐ์ฒด๋ ํจ์ ์์ ๋ถ์ผ ์ ์๋ ํค์๋๋ก, ํด๋น ๊ฐ์ฒด๋ ํจ์์ ๋ฆฌํด ๊ฐ์ ์ปดํ์ผ ํ์์ ๊ฐ์ ์ ์ ์๋ค๋ ์๋ฏธ๋ฅผ ์ ๋ฌํ๋ค. int arr[size]; ์ ๋ฐฐ์ด ์ ์ธ์์ด ์ปดํ์ผ๋๊ธฐ ์ํด์๋ size๊ฐ ์ ์ ์์ ์์ด์ฌ์ผ ํ๊ณ template struct A { int operator()() { return N; } }; A a; ํ
ํ๋ฆฟ ํ์
์ธ์์ ๊ฒฝ์ฐ๋ ๋ง์ฐฌ๊ฐ์ง๋ก number๊ฐ ์ ์ ์์์์ด์ฌ๋ง ํ๋ค. ๊ทธ ์ธ์๋, enum A { a = number, b, c }; enum์์ ๊ฐ์ ์ง์ ํด์ค ๋์ ์ค๋ number ์ญ์ ์ ์ ์์ ์์ด์ฌ๋ง ํ๋ค. constexpr์ ์์ ๋งํ ๋๋ก, ์ด๋ ํ ์์ด ์์์์ด๋ผ๊ณ ๋ช
์ํด์ฃผ๋ ํค์๋๋ค. #include using names..
[C++] keyword: using
[C++] keyword: using
2020.07.231. ์ค๋ช
using ํค์๋๋ ๋ค์๊ณผ ๊ฐ์ด ํ์ฉํ ์ ์๋ค. 1. namespace using ์ง์์(Directive) 2. namespace using ์ ์ธ(Declaration) 3. ํ์
์ ์ 4. ํด๋์ค ๊ณ์ธต์์์ ์ฌ์ฉ 1.1) namespace using ์ง์์(Directive) ๋ค์ ์คํ์ด์ค๋ ๋ช
์นญ์ ์ ์ธ ์์ญ์ ๋ถ๋ฆฌํด์ ์ถฉ๋์ ๋ฐฉ์งํ๋ค. ๊ทธ๋์ ๋ค์ ์คํ์ด์ค ์์ ๋ช
์นญ์ ์ ์ธํ๋ฉด ์ด๋ฆ์ ๋ถ์ผ ๋ ์ถฉ๋์ ๊ฑฑ์ ํ์ง ์๊ณ ์์ ๋กญ๊ฒ ์ด๋ฆ์ ๋ถ์ผ ์ ์๋ค. ๊ทธ๋ฌ๋ ์ด๋ ๊ฒ ์์ฑ๋ ๋ช
์นญ์ ์ฌ์ฉํ๋ ค๋ฉด ๋งค๋ฒ ์์์ ๋ฐํ์ผ ํ๋ฏ๋ก ๋งค์ฐ ๋ฒ๊ฑฐ๋กญ๋ค. ๋ฐ๋ผ์ using namespace (๋ค์ ์คํ์ด์ค ์ด๋ฆ)์ ํตํด ๋งค๋ฒ ๋ค์ ์คํ์ด์ค๋ฅผ ์๋ตํ๊ณ ๋ฐ๋ก ์ฌ์ฉํ ์ ์๋ค. #include using namespac..
[C++] keyword: friend
[C++] keyword: friend
2020.07.231. ์ค๋ช
friend ํค์๋๋ ํด๋์ค ๋ด๋ถ์์ ๋ค๋ฅธ ํด๋์ค๋ ํจ์๋ค์ friend๋ก ์ ์ํ ์ ์๋ค. friend๋ก ์ ์๋ ํด๋์ค๋ ํจ์๋ค์ ์๋์ ํด๋์ค์ private๋ก ์ ์๋ ๋ณ์๋ ํจ์๋ค์ ์ ๊ทผํ ์ ์๋ค. class A { private: void private_func() {} int private_num; // B ๋ A ์ ์น๊ตฌ! friend class B; // func ์ A ์ ์น๊ตฌ! friend void func(); }; class B { public: void b() { A a; // ๋น๋ก private ํจ์์ ํ๋๋ค์ด์ง๋ง ์น๊ตฌ์ด๊ธฐ ๋๋ฌธ์ ์ ๊ทผ ๊ฐ๋ฅํ๋ค. a.private_func(); a.private_num = 2; } }; void func() { A a; // ๋น๋ก pr..