반응형

2024/02 3

[Rust] mut 변수

Rust 프로그래밍 언어에서 모든 변수는 "디폴트로" 불변성(Immutability)의 성질을 갖습니다. 불변성(Immutability)이란 변수에 값이 한번 지정된 후에는 그 값을 변경할 수 없는 특성을 말합니다. 반면에 mut는 변수의 값을 변경할 수 있는 변수입니다. 다음은 쓰레드나 프로세스 내부에서 mut변수를 선언하고 값을 변경합니다. let mut a = json!({...}); a.insert(...); ... } 하지만 외부에서 접근하여 해당 변수의 값을 변경하고자 한다면 해당 변수값은 쉽게 바뀝니다. 이는 Rust 스럽지 않은 코드입니다. 이를 해결하기 위해 다음과 같이 immutable 변수로 감싸줍니다 let a = { let mut a = json!({...}); a.insert(...

Rust 2024.02.15

[Arch Linux] 크롬 원격 데스크톱

yay에 chrome-remote-desktop이 등록되어있는지 확인합니다. yimstar9@archlinux:~ » yay -Ss chrome-remote aur/chrome-remote-desktop-bin 1.0.1-5 (+0 0.00) A simple Desktop application for Chrome Remote Desktop, built using Electron.js aur/chrome-remote-desktop 118.0.5993.9-1 (+122 0.14) Access other computers or allow another user to access your computer securely over the Internet 마침 등록되어있네요 다음 명령어로 설치를 합니다. yay -..

리눅스 2024.02.13

[C] #ifndef~ #endif

point.h를 pointOperation.h, main.c 두군데서 포함합니다. main.c에서는 point.h와 pointOperation.h를 포함합니다. 그러면 point.h는 main.c에서 두번 포함이 됩니다. 중복 포함이 되면 컴파일시 문제가 발생하고 에러메시지를 발생시킵니다. 이 문제를 해결하기 위해 매크로 #ifndef ~ #endif를 사용합니다. #ifndef는 if not defined의 약자로 ~를 정의하지 않았으면 #endif까지 실행해라입니다. 모든 헤더 파일에 매크로 #ifndef~ #endif를 사용하는것이 좋습니다.

C++ 2024.02.07