inflearn logo
강의

Khóa học

Chia sẻ kiến thức

Học C++ cùng Hong Jeong-mo

6.20 Giới thiệu về std::array

array<int,n> 관련 질문

269

gaktsu

11 câu hỏi đã được viết

0

4:44초 에 나오는 매개변수 array<int,5>를 보고

크기값을 바꾸면 어떻게 될까 싶어서 바꾸어봤었는데

오류가 났었습니다

( array<int,4> 나 array<int,6> 처럼 5보다 작거나 큰값을 넣었습니다)

그래서 인수값을 형변환 해줬더니 배열은 형변환이 안된다는 듯한 오류가 떠서 궁금증이 생겼는데

 

Q1. array<int, n>의 크기값을 왜 바꿀수가 없나요?

 

Q2. 배열은 형변환이 왜 안되나요?

 

 

C++

Câu trả lời 2

0

gaktsu

void printLength(const array<int, 5>& your_arr)
{
	cout << your_arr.size() << endl;
}

int main()
{
	array<int, 5> my_arr{ 16,5723,23,644,42 };

	static_cast<array<int, 4>>(my_arr); // Error	C2440	'static_cast': cannot convert from 'std::array<int,5>' to 'std::array<int,4>'
	array<int, 4>(my_arr);//Error	C2371	'my_arr': redefinition; different basic types
	printLength(my_arr);

	return 0;
}

형변환 시도 했던 코드입니다

0

sohyun

안녕하세요

형변황 시도한 코드랑 오류 메세지도 함께 부탁드립니다. 

배열이 형변환 안되는건.. 그 안에 든 모든 원소들도 다 형변환하여야하고 이에 더하여 형변환한다는 것은 데이터 크기가 바뀐다는 것이니 한 칸씩 밀려나거나 땡겨오는 일도 일어나야하지 않을까요? (생각만 해도 무거운 방식일 것 같네요..) 그래서 안될 것 같단 생각이 듭니다. 

0

gaktsu

답변 감사합니다

변수가 메모리에 저장되는 것을 알려주는 강의가 어떤강의였죠

1

470

1

메모리 주소 10진수로 출력

1

655

1

클래스 템플릿 특수화에서 boolalpha로 표현된 리턴값에 대해 질문이 있습니다.

1

501

1

여러가지 리턴 타입에 관한 강의가 어떤 걸까요?

1

534

1

메모리 주소에 관한 질분

0

679

1

인터페이스 클래스에서 reportError의 매개변수에 대해 궁금한 것이 있습니다.

0

553

1

형변환 오버로딩에서 const 관련 질문이 있습니다.

0

445

1

Digit 뒤에 reference를 사용하는 이유

0

510

1

4.2 전역 변수, 정적 변수, 내부 연결, 외부 연결

0

324

1

dat파일이...

0

540

1

TODO:대입 연산자 오버로딩에 대한 소스코드입니다.

0

646

1

복사 생성자 관련 질문이 있습니다.

0

454

1

수업 중 궁금한점이 있습니다.

1

390

1

라이브러리자체가 이해가 되지 않습니다.

0

562

1

마지막 예제 질문

0

304

1

증감연산자 위치에 따른 수행 순서 질문입니다.

0

378

1

단항 연산자 오버로딩에서 return 부분에 질문이 있습니다.

1

413

1

friend함수 관련 질문이 있습니다.

0

312

1

operator+ 정의부분에서 궁금한 것이 있습니다.

0

447

1

3분 17초 질문

0

352

1

함수에 값을 대입한다는 개념이 이해가 되지 않습니다.

0

448

1

int getvalue() const에서 const는 왜 뒤에 붙는건가요?

0

449

2

const Something &st에서 const를 빼면 안되나요?

0

301

1

friend함수는 다른 클래스의 멤버함수로 쓸 수 없나요??

1

494

1