Skip to content
DarkKaiser의 블로그
DarkKaiser의 블로그
  • 개발 관련 자료(노션)
  • Raspberry Pi(노션)
  • WD My Cloud(노션)
  • GitHub
DarkKaiser의 블로그

[카테고리:] 프로그래밍 언어

브라우저 내장 객체의 계층도

DarkKaiser, 2007년 6월 12일2023년 9월 4일

사용자 삽입 이미지

Continue Reading

ActiveX 컨트롤 배포시 설치 여부 판단용 자바스크립트

DarkKaiser, 2007년 6월 12일2023년 9월 4일
function DetectActiveXControl()
{
    try
    {
        var xObj = new ActiveXObject("XControl.X");

        if(xObj)
            Installed = true;
        else
            Installed = false;
    }
    catch(ex)
    {
        Installed = false;
    }

    if(Installed == true)
    {
        alert("ActiveX Control이 설치됫네 *^^*");
    }
    else
    {
        alert("ActiveX Control이 설치되지 않았네 -_-");
        window.location.reload();
    }
}
Continue Reading

mutable 키워드

DarkKaiser, 2007년 6월 12일2023년 9월 4일
class CTextBlock {
public:
   std::size_t length() const;

private:
   mutable std::size_t textlength;

   mutable bool lengthIsValid;
}

std::size_t CTextBlock::length() const
{
   if (!lengthIsValid) {

      textLength = std::strlen(pText);  // 문제 없습니다.

      lengthIsValid = true;             // 문제 없습니다.
   }
}

mutable는 비정적 데이터 멤버를 비트수준 상수성의 족쇄에서 풀어주는 키워드입니다

Continue Reading

volatile 저장소

DarkKaiser, 2007년 6월 12일2023년 9월 4일

컴파일러의 최적화에 따라서는, 변수 N의 값을 다시 변수 N에 저장하는 대신 하나의 레지스터에 남겨 둘 수도 있다. 이런 문제를 컴파일러 최적화 옵션들을 변경하는 식으로 해결하는 것은 코드 전반의 성능에 나쁜 영향을 미칠 수 있다. 올바른 해법은 ANSI C의 volatile 저장소 한정사를 사용하는 것이다. volatile 한정사는 컴파일러에게 변수의 값이 언제라도 바뀔

Continue Reading

pragma의 어원

DarkKaiser, 2007년 6월 12일2023년 9월 3일

이거 궁금하신 분들이 만으리라 생각됩니다.

유래가 Ada까지 거슬러 가는군요. (http://archive.adaic.com/standards/83rat/html/ratl-02-01.html)

pragma, 그리스어로 action 이라는 뜻이군요. 컴파일러에게 특별한 방법으로 action을 취하라는 프리프로세서와 유사한 녀석이죠^^

저의 의문 하나가 풀리는 순간입니다. [커닝헌 책에]

PP233, A12.8 Pragmas

Continue Reading

실수형에서 정수형 형변환 성능 높이기

DarkKaiser, 2007년 6월 12일2023년 9월 4일
일반적으로 실수형에서 정수형으로 형변환을 하는 경우가 종종 있다. 이때 보통 묵시적으로 컴파일러가 알아서 해 줄수 있지만 이렇게 할 경우에 속도가 상당히 느리다. 한두번은 빠르게 느껴져도 이게 백만번, 천만번일 경우 형변환 부분에서 전체 함수의 90%까지 잡아먹을 수도 있다. 이럴경우 아래의 코드를 이용하여 성능을 30% 정도 끌어올릴 수 있다.
이때, 주의할 점은
Continue Reading
  • Previous
  • 1
  • …
  • 18
  • 19

최신 글

  • AssertJ 소개testCompile ‘org.assertj:assertj-core:3.6.2’ 2017년 9월 14일
  • 자주 사용되는 Lombok 어노테이션 2017년 9월 14일
  • 유니코드 #3 2017년 9월 14일
  • 유니코드 #2 2017년 9월 14일
  • 유니코드 #1 2017년 9월 14일

최신 댓글

    카테고리

    • 개인 자료 (1)
      • 일기 (1)
    • 주절주절 (7)
    • 프로그래밍 갤러리 (16)
    • 프로그래밍 언어 (186)
      • Java (29)
      • C/C++/VC++ (114)
      • C# (11)
      • Visual Basic (6)
      • 안드로이드 (9)
      • Objective-C (5)
      • JavaScript (4)
      • JSP/Servlet (2)
      • Python (4)
      • 어셈블러 (1)
    • 개발++ (44)
      • Book (11)
        • Joel On Software (10)
      • 프로젝트 관리 (6)
      • Maven (1)
      • 디버깅 (1)
      • DirectX (1)
      • Silverlight (1)
      • RESTful (1)
      • Hacking (1)
      • WDM (4)
      • VoIP (5)
      • 기타 (1)
    • 개발 도구 (15)
      • eclipse (14)
      • Sublime Text (1)
    • 네트워크 (7)
    • 설치 및 배포 (7)
      • InstallShield (2)
      • NSIS (4)
    • 버전 관리 (9)
      • Git (2)
      • CVS (2)
      • Subversion (5)
    • 데이터베이스 (7)
      • Oracle (3)
      • Sybase (2)
      • MS-SQL (2)
    • 단위테스트 (3)
      • JUnit (1)
      • NUnit (2)
    • 버그추적시스템 (2)
      • mantis (2)
    • 운영체제 (7)
      • Windows (5)
      • 리눅스 (2)
    • WAS (3)
      • WebLogic (3)
    • 디자인패턴 (1)
    • 디지털 이미지 프로세싱 (16)

    태그

    Abstract ActiveX AfxParseURL Automation boost devenv.exe event EventLogTraceListener Hover interface IO iTextSharp JAD jar JavaScript Joel Leave MFC Monitor msdev.com MSDN mutable PDF Properties RAW Saturation SHGetFolderPath SHGetKnownFolderPath SQLite STLTask String TextWriterTraceListener URL VI 권한 데이터소스 디컴파일러 문자열 스레드 동기화 스레드 생성 실용주의 프로그래머 자동화 테스팅 파일포맷 프리컴파일

    메타

    • 로그인
    • 엔트리 피드
    • 댓글 피드
    • WordPress.org
    ©2025 DarkKaiser의 블로그 | WordPress Theme by SuperbThemes