러스트 프로그래밍 언어에서 외부 함수 인터페이스(FFI, Foreign Function Interface)를 활용하여러스트 코드에서 C로 작성된 함수와 일부 C++로 작성된 함수를 호출할 수 있다.러스트는 시스템 프로그래밍 언어로서 메모리 안전성을 강조하지만, 기존의 C/C++로 작성된 라이브러리를 활용하거나 시스템 호출을 직접 다루어야 하는 경우가 많다. 이때 FFI는 러스트 코드가 외부 함수와 데이터를 교환할 수 있게 해주는 중요한 메커니즘이다.1. FFI(외부 함수 인터페이스) 개요외부 함수 인터페이스(FFI)는 두 가지 이상의 프로그래밍 언어가 서로의 코드를 호출할 수 있도록 하는 메커니즘이다. 이는 주로 시스템 프로그래밍, 운영 체제 API 호출, 네트워크 통신, 하드웨어 제어, 고성능 연산이 ..
노션 정리 : 좀 더 색깔이나 덧글로 모르는 단어까지 걸어두고 조금 더 정갈하게 정리해뒀다. 발표를 위한 발제글 올리기This chapter covers the two different kinds of error handling in Rust: panic and Results.Rust에서의 두 가지 에러 처리 방법인 패닉(panic)과 결과(Result)를 다룬다.Ordinary errors are handled using the Result type. Results typically represent problems caused by things outside the program, like erroneous input, a network outage,or a permissions problem. Th..
Chater 12. 연산자 오버로딩01. 도입2장에서 살펴본 망델브로 집합 플로터에서는 복수평명 위의 수를 표현하기 위해 num 트레이트의 Complex 타입을 사용한 예시가 아래와 같음#[derive(Clone, Copy, Debug)]struct Complex { /// 복소수의 실수 부분 re: T, /// 복소수의 허수 부분 im: T,}보통 복소수의 형태는 a+bi 형식으로 나타낼 수 있으며, 여기서 a는 실수 부분이고 b는 허수 부분이다. T는 제네릭 타입으로, 실수 부분과 허수 부분이 다양한 수치 타입을 가질 수 있도록 한다.예를 들어, 복소수 3+4i를 표현하기 위해 Complex 구조체를 사용할 수 있다.let z = Complex { re: 3, im: 4 };Complex 수는 기본 ..
TMI프로그래밍 러스트 책에 있는 것을 정리스터디잇츠 우먼 스터디 1기 Rust 스터디에 선발되어서 이번주부터 스터디 하게 됨현재 배달의 민족과 잇츠 2기 뽑는 중난 1기라서 우아한 스터디만 신청 가능함우아한 스터디링크 : [모집] 우아한스터디 2024 여름시즌모집 기간 : 5/8 ~ 5/14활동 기간: 6/1 ~ 7/31잇츠스터디링크 : 서울 우먼잇츠 X 우아한스터디모집 기간 : 5/8 ~ 5/14활동 기간: 6/1 ~ 7/31Rust를 쓰는 이유 - chapter 1텍스트1. C언어, C++언어의 문제점int main(int argc, char **argv){ unnsigned long a[1]; a[3] = 0x7ffff7b36cebUL; return 0;}이 프로그램에는 결함이 있다. ..