기본 콘텐츠로 건너뛰기

c++ inline

link: https://msdn.microsoft.com/ko-kr/library/bw1hbe6y.aspx

inline 명령어 사용시 유의점

1. 매크로에서는 파라메터가 반복해서 정의 되는 문제가 있지만, 인라인 함수에서는 하나의 파라메터로 정의되므로, 위의 링크 내용 참고

2. 매크로처럼 호출한 부분에 코드가 대치 되므로(컴파일러 따라 다름, 100%는 아님) 함수 크기가 커지면, inline 명령어 정의를 제거할 것인지 여부를 검토해야 한다.

3. inline 함수의 컴파일은 호출 된 부분에 코드가 삽입되는 시점에 해당 코드 내용을 찾아서 대치하는 구조이므로, 클래스화 했을 경우, 클래스 내부에서 호출하지 않고, 외부에서만 호출되고 있다면, 해당 코드는 클래스 내부에서 오브젝트 코드로 만들어지지 않을 가능성이 있다.(보통 정의 되지 않음 함수라는 링크 오류를 출력한다.)

4. 3번의 문제처럼 inline 함수는 호출된 부분에 정의 부분을 찾아서 삽입하는 방식을 사용하는 가능하면 헤더 파일에 정의하는 것이 좋다.

댓글

이 블로그의 인기 게시물

[c#.net] WPF 사용 중 xaml관련 실행시 오류 와 대처 방법

wpf 사용 중 xaml관련 실행시 오류 가 발생해서 자그마치 2일을 소비 했다..--;; 오류 내용은 아래와 같다. ================================== 'System.Windows.Markup.XamlParseException' 형식의 첫째 예외가 PresentationFrameWork.dll에서 발생했습니다. 추가 정보: '지정된 바인딩 제약 조건과 일치하는 'PapaZone.MainWindow' 형식에 대한 생성자 호출에서 예외가 throw 되었습니다.' 줄 번호 '21' 및 줄 위치 '9' 이 예외에 대한 처리기가 있으면 프로그램을 안전하게 계속할 수 있습니다. [] 이 예외 형식이 throw되면 중단 ================================== 위 Xaml 오류 메세지만으로는 내용 추적 불가하여, 도대체 뭔가 했다. 검색해도 뚜렷한 답변은 없었지만, 여러가지 의견을 종합해 보면 아래와 같다. 1. xmlns 관련 파일 과 관련된 파일 로딩 실패 이거나, 2. 신규로 추가된 namespace 에 속한 태그 사용시 오류로 판단되어 태그 하나씩 삽입하며 테스트 해봐야 한다고 함. 해결한 지금에 원인을 보면, xaml 에서 clr-namespace 로 추가된 항목들이 로딩에 실패해서 발생한 것이며, 추가된 항목은 있었으나, 이것과 연결된 파일이 없어서 로딩되지 않는 것이 문제였다. 오늘도 즐거운 하루~~

[링크] CPU 점유율과 성능, 스트레스 테스트 프로그램

http://blog.naver.com/PostView.nhn?blogId=hoonedang1&logNo=90114299682 - CPU 점유율 설정값으로 높여주는 프로그램 - 내용 삭제됨 0. While(1) {}, for(;;) {} 실행시 CPU 100 % 가 되는 이유에 한번쯔음 읽어 볼만한 곳 https://kldp.org/node/31797 1. CPU 점유율과 메모리 점유율 높이는 프로그램 1.1 StressNG - 유닉스/리눅스 스트레스 테스트 https://websetnet.com/ko/how-to-stress-test-cpu-and-memory-vm-on-a-linux-and-unix-with-stress-ng/ 1.2. HostWay - 리눅스 스트레스 테스트 도구 http://faq.hostway.co.kr/?mid=Linux_ETC&page=6&document_srl=1490 1.2 IntelBurnTest - 윈도우, 오버클럭 안정 상태 테스트 프로그램 http://blog.naver.com/PostView.nhn?blogId=tyboss&logNo=70084727507 1.3 SP2004(StressPrime2004) - 윈도우, CPU와 RAM 스트레스 http://cair.tistory.com/111 1.4.  Stress My PC v1.21 (시스템 과부하 테스트) - 윈도우 http://www.kbench.com/software/?q=node/47223 1 .5. HeavyLoad - 윈도우,  서버 성능측정을 위한 스트레스툴(프리웨어) http://idchowto.com/?p=9159 1.6. Prime95 - 윈도우, CPU 스트레스 http://extrememanual.com/archives/3798 2. 윈도우즈 설치한 시스템에서 성능이 제대로 나오지 않을 때 확인 해봐야 하는 것들. 2.1. 윈도우즈 에서 성능...

osx 터미널에서 이미지 파일 보기 open

맥(OSX) 터미널에서 이미지파일 바로 보기 UI의 시대에 누가 터미널을 사용하려나 하겠지만, 여러가지 작업을 하다보면, 터미널에서만 지속적으로 작업을 할 경우가 자주 발생한다. 간단한 것은 커맨드라인 명렬을 모른다해도, 경로만 알면,  UI 프로그램으로 약간의 삽질(?)을 통해 해당 프로그램을 수행하면 된다. 하지만, 터미널에서 주로 작업을 수행하고, 자주 반복되는 일이라면 명령어를 알아놓는게 훨씬 유리할 터... 터미널에서 쓰다 보니, 다른 건 비교적 unix 명령어로 해결이 되는데, 이미지 파일 보기 같은 경우는 텍스트 기반 프로그램에서는 쉽지가 않다. 결국, 관련 명령어를 검색 했고, 이전에도 몇번 언급을 했지만, 결국 타고난 능력(여러번의 기억의 망각)으로 다시 검색하게 되고, 또 다시 알게되었다. open 또 찾아보게 될줄이야..--;; 난 아래 2가지 형태를 가장 많이 사용하는 듯 open image/log.png    --> 파일과 관련된 Viewer? 띄우기 보통은 Preview가 뜸 open .    --> 현재 폴더 위치로 된 Finder 아래 명령들에 대한 설명들도 추가로 있으니, 추가적인 설명이 필요하면 맨 아래쪽 링크를 참고 하면 됨. open  pbcopy pbpaste mdfind screencapture launchctl say diskutil brew 관련한 검색 결과중 나중에 또 보게 된다해도 괜찮을 것이 보여서 글을 하나  남긴다. 제목 Eight Terminal Utilities Every OS X Command Line User Should Know 관련 링크:  http://lifehacker.com/eight-terminal-utilities-every-os-x-command-line-user-s-1593793109