찾다

 >  Q&A  >  본문

c++ - 라이브러리 배치에 의해 예약된 이것의 구체적인 구현은 무엇입니까?

으아악

연산자 new의 다양한 형태를 배울 때 접했는데(c++ 입문서에서는 설명이 별로 없었음) 이 함수 호출을 사용하여 구현하는 방법 등 이 함수의 역할을 이해할 수 없었습니다placement new的构造效果, 比如这样two *abc = new(m) two(10);(이 구조를 봤음에도 불구하고) 실제로 위 함수도 호출됩니다.) 그리고 테스트 예시는 다음과 같습니다. (문제가 주석 처리되었습니다.)

으아악

여기에서는 문제를 더욱 단순화하고 자세히 설명하겠습니다.

  1. 이 기능이 구축 효과를 얻을 수 있는 이유는 two *abc = new(m) two(10);为例, 我没有(或者说不知道怎么在step into进去)能看清具体实现, 虽然我知道抽象出来就是实现了就地构造了two(10)이 개체입니다.

  2. 같은 효과를 얻기 위해 main()函数注释处这样直接调用函数的做法来实现就地构造, 我该如何修改参数和传入参数实现 two *abc = new(m) two(10);를 사용하면 어떨까요?

PS:

怪我咯怪我咯2738일 전790

모든 응답(1)나는 대답할 것이다

  • 伊谢尔伦

    伊谢尔伦2017-05-16 13:32:16

    /q/10... @felix Dashi님이 이미 이 질문에 대한 답변을 주셨는데요, 방금 보고 생각해보고 관련 내용을 찾아보겠습니다

    회신하다
    0
  • 취소회신하다