전체 글 (33) 썸네일형 리스트형 포인터를 써야하는 이유 - 스택메모리와 힙 메모리 측면에서. 🔎 스택 메모리와 동적 할당의 차이점 및 설계 원리스택 메모리는 자동으로 할당/해제되며, 이는 C++의 중요한 메모리 관리 특성입니다. 하지만 그렇다면 왜 모든 메모리를 스택 메모리에서 관리하지 않고, 별도로 힙 메모리(동적 할당)가 필요할까요?이 질문에 대한 해답을 이해하기 위해 다음 내용을 설명하겠습니다.스택 메모리란?스택 메모리의 자동 할당/해제 원리힙 메모리(동적 할당)란?스택과 힙의 차이왜 스택만 쓰지 않고 동적 할당을 사용할까?정리🚀 1. 스택 메모리 (Stack Memory)란?스택 메모리는 함수 호출 시 자동으로 생성되는 메모리 영역입니다.🔹 특징✅ 자동 할당/해제✅ 빠른 속도✅ 정적 크기 (Compile-time에 크기 결정)✅ 지역 변수 (Local Variable) 및 매개변수 .. C++에서 왜 포인트를 써야할까? 포인트를 쓰지 않으면 어떤 장단점이 있을까? 🔎 포인터를 사용한 객체 접근 vs 포인터 없이 객체 접근C++에서 객체에 접근하는 방법은 크게 두 가지입니다.포인터를 사용한 접근 (ptr->data)포인터 없이 직접 접근 (obj.data)각 방법에는 명확한 장단점이 있으며, 상황에 따라 적절한 방식을 선택하는 것이 중요합니다. 아래에서는 두 접근 방법을 구체적으로 비교 분석합니다.🚀 1. 포인터를 사용한 객체 접근 (ptr->data)🔹 장점✅ 동적 할당 (Dynamic Allocation) 가능객체를 런타임에 생성하여 사용할 수 있어, 유연한 메모리 관리가 가능합니다.대규모 데이터 처리나 메모리 사용 최적화에 유리합니다.MyClass* ptr = new MyClass();ptr->data = 30; // 포인터 접근delete ptr;.. ROS2 launch 파일 구조를 carter_navigation 파일로 파헤쳐보기 ROS2 launch 파일은 어떤 역할을 수행하는지 IsaacSim 예제중에 하나인 multiple_robot_carter_navigation_hospital.launch.py 파일 분석을 통해 구체적으로 알아보자. 전체 코드는 아래와 같다. ## Copyright (c) 2024, NVIDIA CORPORATION. All rights reserved.## NVIDIA CORPORATION and its licensors retain all intellectual property## and proprietary rights in and to this software, related documentation## and any modifications thereto. Any use, reproduct.. Isaac Sim의 QoS node property 파헤치기 1. QoS란?ROS2에서는 네트워크 상태가 불안정하거나 여러 로봇이 동시에 통신할 때, 데이터 손실을 줄이거나 전송 방식을 최적화하기 위해 QoS (Quality of Service) 설정을 제공합니다.QoS는 퍼블리셔(Publisher)와 서브스크라이버(Subscriber) 간의 데이터 전달 방식을 조절하는 역할을 합니다. 2. 각 QoS 설정 옵션 및 의미아래는 Isaac Sim의 ROS2 QoS Profile Node에서 볼 수 있는 속성과 각각의 설정 옵션들입니다.(1) createProfileQoS 프로파일을 미리 정의된 설정으로 선택할 수 있습니다.선택한 프로파일에 따라 deadline, reliability, durability 등의 QoS 값이 자동으로 변경됩니다.Default for .. ROS 2의 통신 및 구조 개요 ROS 2의 통신 및 구조 개요ROS 2는 Data Distribution Service(DDS) 프로토콜을 기반으로 통신을 수행합니다. ROS 2의 통신 메커니즘과 구조는 ROS 1과는 많은 차이점을 보이며, 아래에서 주요 특징과 각 계층별 작동 원리에 대해 설명드리겠습니다.1. ROS 2의 주요 통신 방식 ROS 2는 Data Distribution Service(DDS) 프로토콜을 통신에 활용하며, 이는 주로 OSI 7계층 모델의 **전송 계층(Transport Layer)**과 **세션 계층(Session Layer)**에서 동작합니다. 이 미들웨어는 **RTPS(Real-Time Publish-Subscribe)**를 사용하여 실시간 데이터 교환을 지원하며, 이를 통해 퍼블리셔와 서브스크라이버 .. 이전 1 2 3 4 ··· 7 다음