다음 코드가 유효합니까? 값이 생성자에서 그 공간에 할당되기 전에 즉클래스의 포인터 초기화
class Foo()
{
int* Bar;
public:
Foo()
{
*Bar = 123;
}
}
는 Bar
실제로 실제 메모리 공간을 가리 킵니다? 또는 다음과 같은 작업을 수행해야합니까?
class Foo()
{
int* Bar;
public:
Foo()
{
Bar = new int[1];
*Bar = 123;
}
~Foo()
{
delete[] Bar;
}
}
메모리 주소를 직접 지정하려고합니까? 어쨌든 나는 전문가는 아니지만 '새로운 int'또는 다른 어떤 원시적 인 것을 결코 말하지 않는다는 것을 확신합니다. – jakev
Fitst one이 잘못되었습니다. 당신은 그것을 새롭게해야합니다. –