"일반적으로 String은 다 똑같다." 라고 알고있었는데


C++으로 코딩을 해보니 같은 String이지만


std::String과 닷넷String은 다르다


그래서 std::string으로 변수사용을 했다면 컨트롤에 있는 Text를


해당 변수에 넣어주기 위해서는 변환해주어야 한다.



std::string -> System::String 변환방법


#include <msclr\marshal_cppstd.h> // 헤더 추가하고


std::string 변수명 = mslr::interop::marshal_as<std::string>(System::String의 TEXT);



System::String -> std::string 변환방법


String^ temp = gcnew String(System::String변수명.c_str());



위와 같은 방법을 쓰면 변환이 가능하다.



블로그 이미지

SherryBirkin

,

숫자야구 할 때 

경우의 수를 추려 주는 프로그램


Html + JavaScript

Number_BaseBall.html

src.js



C#

NumberBaseball.exe


C++

NumberBaseBall_C .exe



블로그 이미지

SherryBirkin

,

""와 ''는 동일하다

"String" === 'String'

"String" == 'String'


비어있는 문자열,

0 문자열,

공백 문자열,

숫자 0


위의 4가지는 false를 의미하기도 함


ex)

''        ==   '0'                 // false

0         ==   ''                 // true

0         ==   '0'                // true

false     ==   'false'           // false

false     ==   '0'               // true

false     ==   undefined     // false

false     ==   null             // false

null      ==   undefined     // true

" \t\r\n" ==   0             // true


이와 같은것을 Truthy, Falsy라고 한다.


참조사이트

https://developer.mozilla.org/en-US/docs/Glossary/Truthy

https://developer.mozilla.org/en-US/docs/Glossary/Falsy


truthy와 falsy를 단순히 더블이퀄(==)비교 하게되면 혼돈이 생기기 쉽습니다.

변수 값이 존재하느냐 마느냐는 느낌표를 붙여 판단하면 좋으며,

비교를 위해서는

타입까지 체크하는 트리플이퀄(===)을 사용하는 것이 좋다.

'Programming > JavaScript' 카테고리의 다른 글

값 전달 방법  (0) 2016.05.25
블로그 이미지

SherryBirkin

,