프로그래밍 QnA + 설치 및 활용 QnA

jic5760의 이미지

C++ 클래스별 new/delete Override하는법?

안녕하세요.
C++ 에서 Class별로 new/delete 연산자를 Override하고싶습니다.

void* operator new(std::size_t size) throw(std::bad_alloc)
{
}
 
void operator delete(void *ptr) throw()
{
}
 
void* operator new[](std::size_t sz) throw(std::bad_alloc)
{
}
 
void operator delete[](void* p) throw()
{
}

우선 위같이 하면
A *pA = new A;
char *pB = new char[1024];
이런식으로 하면 원하는데로 작동합니다.

그런데 저는 Global영역이 아닌 특정 Class영역안에서 new/delete연산자 override을 하고 싶습니다.

익명 사용자의 이미지

질문드립니다

a.txt 파일 내에 계정(ID)를 넣어놓고
예를들어
qwer
asdf
zxcv
이런식으로 3가지 ID를 넣어놓았다고 하면

라인하나씩 불러와서 해당 계정을 자동으로 삭제하는 스크립트를 만들어보고 싶은데
userdel (data)를 어떻게 불러와야 하나요.?

익명 사용자의 이미지

C++ 알파벳개수코드

class Count {
char *s; // 포인터 -> 입력받은 문자열의 주소
public
Count(); //생성자
void Input(); // 문자열 멤버변수를 입력 받는 함수
void Output(); // 문자열 멤버변수를 출력하는 함수
int CountUpperCase(); //대문자의 개수
int CountLowerCase();// 소문자의 개수
int CountNum(); // 숫자의 개수
}
void main(void) {
Count st;
st.Input();
st.Output();
cout << st.CountUpperCase();
cout << st.CountLowerCase():
cout << st.CountNum();
}
여기까지 했는데요 어렵네요ㅠㅠ

kuroli의 이미지

SPARC 프로세서에서의 정적변수 영역 접근

SPARC 프로세서를 공부하고 있습니다.

data 영역에 서로 다른 크기의 변수 (같은 크기일 경우 문제가 없습니다만....) 를 저장하고 레이블을 통해 접근하는 방법에 대해, 문서적으로는 이해했다고 생각했으나 실제 코딩을 해 보니 제대로 값을 읽어오질 못하네요.

.section ".data"
record: .word 3
.byte 1
.align 2
.half "M"

예를 들어, 위와 같이 .data영역에 데이터를 저장할 경우

상대 주소

0 .word 3
4 .byte 1
5 .half "M"

이렇게 저장되는데, 상대주소 5는 2의 배수가 아니므로 경계정렬을 통해

foruses의 이미지

하드디스크 간 cp -a 할 때, failed to preserve ownership 에러

sudo \cp -a source/* target/

속성을 보존하려고 위처럼 실행시키면, 아래와 같은 에러 메세지가 뜹니다.
그리고 target내 모든 파일 속성이 drwxrwxrwx 로 바뀌어 복사가 됩니다.

cp: failed to preserve ownership for `/source/file1.dat': Operation not permitted

source 의 하드디스크는 ext4 파일 시스템이고, target 하드디스크는 mkfs.exfat 로 생성되었고, mount.exfat 로 마운트했었습니다.

혹시 해결방법 아시는 분 계시면 도움 부탁드립니다.

쇼난@Naver의 이미지

segmentation fault 뜨는 이유를 모르겠습니다...

도저히 못찾겠습니다.
프로세스 3개를 번갈아 실행(파일 열어 카운트)하는 코드입니다.
자식1->자식2->부모->자식1->....

왜인지 모르겠는데 항상 13000~14000쯤에서 세그멘테이션 폴트가 뜹니다..
코드입니다.

으네이의 이미지

가상함수 테이블 크기

c++에서 가상함수 테이블 크기는 포인터 크기 4바이트인가요? ( 32비트 기준 )

만약 가상함수가 여러개 생기면 가상함수 테이블 크기가 늘어나나요?

zasxer의 이미지

자식 프로세스와 부모 프로세스가 pipe를 통해 통신

자식 프로세스와 부모 프로세스가 pipe를 통해 통신을 할 때,

pipe(pfd) -> 파일 복제??
표준 출력(1)로 변경 후 쓰고 닫고 표준 출력(0)으로 변경하는 이유가 뭔가요??

표준 출력이란 개념을 잘 모르겠어요.

그리고 파이프 생성할때 pfd[0]와 pfd[1]에 들어가는 데이터는 어떤 데이터인가요??
int형으로 되어있긴한데 pfd[0]와 pfd[1]이 의미하는게 뭔가요?

ljh723의 이미지

getopt_long에서 잘못된 옵션 줬을 때 에러메시지 끌수는 없나요?

# ./hello --test
./hello: �ν��� �� ���� �ɼ� '--test'

구현된 옵션을 주면 잘 동작하는데 잘못된 옵션을 주면 저런식으로 에러메시지가 출력돼서
보기가 안좋네요(죽지 않아서 그 뒤에는 정상 동작)
에러메시지가 출력 안되게는 할 수 없을까요?

boomydh의 이미지

/mnt failed: Structure needs cleaning 오류를 어떻게 해결해야할까여?

타겟보드 루트파일시스템을 옮기기 위해서

# mount rootfs.ext4 /mnt -o loop
# cp -rf /mnt/* /media/sdcard
# sync
# umount /dev/loop0

위에 같은 순서로 작업을 했습니다.

그리고 다시 마운트 할려고 하니

mount: mount /dev/loop0 on /mnt failed: Structure needs cleaning

메세지가 뜨더니 다시는 마운트가 안되더라고요

이미 언마운트 된 상태에서 /dev/loop0를 조사할 수 없고 그렇다면 root가 문제인거 같은데

다른 포럼에 있는 fsck나 e2fsck를 이용할려고 해도 root를 언마운트 할 수 없으니

재시작하여 shift를 눌려서 recovery 모드로 가서 fsck를 해서 재부팅해도 결과는 같더군요

일단 system 로그 파일 보니

페이지

프로그래밍 QnA + 설치 및 활용 QnA 구독하기