해결된 질문
작성
·
285
0
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
안녕하세요 큰돌님! 저는 기존에 다른 언어로 코딩테스트를 준비하다가 큰돌님 강의로 C++로 언어를 바꾸고 다시 공부를 하고 있습니다.
자바에서는 String에 temp = s와 같이 작성하면 temp에 s의 주소값이 넘어가게 되고 temp를 어떻게 바꾸던 s도 함께 바뀌게 되어 어떤 로직이든 temp==s는 참이 되는데
C++에서는 string 타입에서 =과 ==이 어떻게 동작하는지가 궁금합니다. 배열에서 배열이름을 주소값으로 사용하는 것처럼 string도 변수명이 첫요소의 주소값인가 생각했는데 코드가 동작하는걸 보면 아닌 것 같아서 어떻게 동작하는지 질문드리고싶습니다.
좋은 강의와 자료를 제공해주셔서 감사합니다.
답변 1
0
안녕하세요 mini님 ㅎㅎ
=은 값 대입입니다.
==는 비교에요 ㅎ
배열에서 배열이름을 주소값으로 사용하는 것
>> 이거는 int a[] 기본 정적 배열만 가능합니다. 정확히는 array to pointer decay라고 하는건데 이부분은 제가 0주차 개념강의로 이번주안에 강의로 올려드릴 예정입니다. string은 불가능합니다.
혹시 답변이 되셨을까요? 제가 mini님이 어떤 코드를 구현하셨는지 잘 몰라서... ㅎㅎ 이정도 밖에 못드리네요.. ㅎㅎ 혹시 더 궁금하신 부분이 있으시면 코드 구현하신거 올려주시면 또 답변 드리겠습니다.
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제가 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.
==의 비교가 자바에서는 내용이 같아도 경우에 따라 주소값이 달라서 false가 되는 경우가 있는데 c++에서는 어떻게 다른가 여쭤본것이었습니다! 어쨌든 ==을 내용이 같은가 비교하는것으로 이해하겠습니다 감사합니다