kyy1002의 등록된 링크

 kyy1002로 등록된 네이버 블로그 포스트 수는 45건입니다.

마켓컬리 추천인 이벤트 신규회원이벤트 10,000원(만원) 또는 5,000원(오천원) 쿠폰 받는 방법 2021년 이벤트명 등록 다양한 마켓 컬리 이벤트 정보 [내부링크]

마켓컬리신규회원이벤트마켓컬리 추천인 참여 2021년 이벤트명 등록 10,000원(만원)또는 5,000원(오천원) ...

신사임당 -> 웅이사의 책터뷰 / 저자 김종봉 [내부링크]

나만의 투자 원친(김종봉)저서: 돈의 시나리오(2021), 돈 공부는 처음이라(2019) 부는 최소 5년 10년 20년을 투자 해야싸이클의 파도를 타자급하게 투자하지 말고 기회를 노리자현금을 보유하고 있는것은 바보짓이 아니다 기회를 노려라.현재와 과거의 시장에서 통찰을 얻어 다음 장에서 수익을 내라현재의(2021년 2월)의 시장에서 주식에 뛰어드는것은 조금 무리일수 있으나,그 중 오르는 종목도 있다.나만의 기준을 정하라(지수-기준, 손절 등) 멘탈 관리손절가가 정해져 있으면 생각보다 멘탈이 무너지지 않는다. 손절...?손절을 못하는 경우는 실력이 없어서, 자기 확신이 없어서 이다. 기준이 없어서.

[펌] 칼리(kali) mysql / apache start set [내부링크]

kali 리눅스에는 apache2 서버 기본 설치 됨. 아파치 웹서버 시작: /etc/init.d/apache2 start아파치 웹서버 web root: /var/www /var/www 밑에 코드를 추가 MySQL 시작: /etc/init.d/mysql startconsole 접속: mysql -u root -penter password: toor MariaDB > Start Apache and Mysql in Kali Linux.April 10, 2017iamjagjeetubhiApache and Mysql comes pre-installed in Kali Linux. But whenever we open localhost in our browser we got the error. It is because we have not started the apache service as it is installed but not running.To start the Apache service in Kali linux use the following command:sudo /etc/init.d/.......

[펌] MySQL 문법 정리 [내부링크]

MS-SQL ** SQL문은 대소문자를 구분하지 않지만 데이타는 대문자와 소문자를 구분한다 주석을 다는 방법은 /* 주석 */ 이거나 한줄만 주석 처리를 할 경우는 문장 맨앞에 --를 붙인다 ** 각각의 데이타베이스의 SYSOBJECTS 테이블에 해당 데이타베이스의 모든 정보가 보관되어 있다 SYSOBJECTS의 TYPE 칼럼으로 'U'=사용자 테이블, 'P'=저장 프로시저, 'K'=프라이머리 키, 'F'=포린 키, 'V'=뷰, 'C'=체크 제약등 오브젝트 이름과 정보를 알 수 있다 데이타 검색 USE 데이타베이스명 /* USE 문을 사용한 데이타베이스 선택 */ SELECT * FROM 데이블명 /* 모든 칼럼 불러오기 */ SELECT TOP n * FROM 테이블명 /* 상위 n개의 데이타만 가져오기 */ .......

세포 → 핵(세포 내 핵) → 염색체(핵 속에는 염색체) → 유전자(기능적 단위) → DNA(단편) → 염기서열 [내부링크]

세포 → 핵(세포 내 핵) → 염색체(핵 속에는 염색체) → 유전자(기능적 단위) → DNA(단편) → 염기서열(유전자의 서로 다른 정보 코드-아데닌A, 티민T, 구아닌G, 시토신C)

windows server 보안 셋팅 / 실습용 server 셋팅 [내부링크]

Windows Server 2012 ~ 2019 실습용 셋팅 방법 (묻지 않고 종료)gpedit.msc - windows설정 - 보안설정 - 로컬 정책 - 보안 옵션 - 대화형 로그온 C + A + D 사용할 필요 없음 설정 변경 (윈도우 패스워드 묻지 않고 자동 로그인)윈도우-Rcontrol userpasswords2설정 변경 command 용 서버 종료shutdown /s /t 0 만료된 60일 연장 방법Command Prompt(Admin) -> slmgr.vbs /rearm 위치 : C:\Windows\system32\slmgr.vbs slmgr 옵션(OPTIONS) VBS 2019부터는 조금 달라짐 /dli : 라이선스 정보 확인/dlv : 상세 라이선스 정보 확인.유예기간(Grace period)과 유예기간 연장횟수(rearm counts) 확인 가능./xpr : 라이선스 만료일자 확인./rearm :.......

원하는 것을 얻는 화법 / 접속사 활용 / 김주하 컨설턴트 / 신사임당 인터뷰 [내부링크]

상대에게 이득이 될 수 있는 부분을 먼저 말한다. 설득의 말에 '왜냐하면'을 붙인다.인과관계가 없더라도 붙인다 그럼 생긴다. 부정적인 것을 먼저 이야기 하지 말아야 한다.(기분 나쁘라고, 팔려고 하는 말이 아니라)(반대어 - 편안하게 등) 부정적 접속사를 긍정적 접속사로 사용해라그런데(예측력 상승, 반대의) -> 그리고(친구야 이것도 좋고 그리고 이것만 이렇게 해주면 좋겠어)아시나요(모른다의 전제) -> 아시지요(안다의 전제) 진급 -> 한 팀 -> 같은 편 -> 한 목표 -> 찾아뵙고 문의 설득하려고 하기 때문에 도망간다.

NetBIOS 관련 프로토콜의 종류 특징및 취약점 대안 [내부링크]

http://cafe.naver.com/nsis/28851 - 목 차 - A. 서 론 1. 주 제 2. 목 적 B. 본 론 1. NetBIOS 란?1) NetBIOS의 정의2) NetBIOS의 역할과 IP의 차이3) NetBIOS와 NetBIUE, WINS의 이해 2. NetBIOS 관련 프로토콜의 종류와 기능1) 1352) 1373) 1384) 1395) 445 3. NetBIOS 관련 프토로콜 취약점1) 139 포트 - 목록화2) 139 포트 - Nuking 공격3) NetBIOS를 이용한 원격 쉘 획득4) 135 포트 - MS RPC 취약점을 공격하는 악성프로그램에서 악용5) 445 포트 - Window 계열 NetBios 공유폴더를 이용하는 악성프로그램에서 악용 C. 결 론 1. NetBIOS 프로토콜에 따른 위험성 2. NetBIOS 프로토콜상의 취약점 보안1) 라우터나 침입 차단스템에서의 접근.......

만수역 맛집 [내부링크]

개업한지 얼마 안된것 같은데 대박! 뭔가 제대로 먹은것 같구만기본 인삼주와 함께 만수한방삼계탕 인천시 남동구 백범로 143번길 13 만수역 1번 출구 삼계 반계탕 녹두죽 인삼주 짱!

판사가 경찰 죽고나면어떤 책임이나 .. [내부링크]

판사가 경찰 죽고나면 어떤 책임이나 죄책감을 가질까.... 사용지침 어기고 테이저건 쏜 경찰 목 조른 20대 `정당방위` 연합뉴스는 새로운 시대에 걸맞은 멀티미디어 콘텐츠로 다양한 상품, 다양한 뉴스를 생산하고 있습니다. 확인하러 가기

Unicode , UTF8 , UTF7 , UTF16 , UTF32 , ASCII 및 ANSI 인코딩의 차이점 [내부링크]

출처 https://code.i-harness.com/ko/q/aaf1b " 유니 코드 "는 인코딩이 아니지만 유감스럽게도 많은 문서가 특정 시스템이 기본적으로 사용하는 유니 코드 인코딩을 참조하는 데 부정확하게 사용합니다. Windows와 Java에서 이것은 종종 UTF-16을 의미합니다. 다른 많은 곳에서는 UTF-8을 의미합니다. Unicode는 추상적 인 문자 세트 자체를 참조하며 특정 인코딩을 의미하지는 않습니다.UTF-16 : "코드 단위"당 2 바이트. 이것은 .NET의 원시 형식이며 일반적으로 Windows와 Java에서 사용됩니다. Basic Multilingual Plane (BMP) 외부의 값은 서로 게이트 쌍으로 인코딩됩니다. (이들은 비교적 드물게 사용되는데, 이는 아주 소수의 개발자가.......

4월 28일 토요일 [내부링크]

[스크랩] 하루 `8시간` 이상 안 자면 얼굴 못생겨진다 하루 '8시간' 이상 안 자면 얼굴 못생겨진다 http://m.insight.co.kr/news/125991 http://m.cafe.daum.net/dotax/Elgq/2243842?svc=kakaotalkTab&bucket=toros_cafe_channel_beta

TCP/IP 벤더룰 설명 [내부링크]

짜집기 펌 / TCP/IP 공격 TCP/IP 프로토콜 규약상의 문제점을 악용하여 공격함으로써 Network, System에 Over Load 및 Down을 유발하여 정상적인 서비스를 방해하는 공격이다. Ack Storm 공격방법공격자가 대상서버에 대량의 TCP/IP 의 Ack 신호를 보냄으로써 대상 서버는이로 인하여 불필요한 Load가 발생하고, 정상적인 서비스가 지연되는 공격이다. 이는 TCP/IP의 프로토콜 규약의 헛점을 이용하여 공격하는 기법이다. 또한 이 공격은 Session이 이루어진 Packet에 대해서 Hijacking을 하기 위해서사용 되기도 한다. 탐지방법① 공격자가 보낸 Packet에서 TCP를 분석한다.② TCP Header의 flags가 TH_ACK로 설정되어 있는지를 확인.......

윈도우 보안 총정리 [펌] [내부링크]

1.사용자 계정 정책 보안윈도우 2000 서버를 FTP 서비스로 사용하기 위해 새로 설치하였다. "ftp_user" 라는 사용자를 아래와 같은 정책으로 구성하여라. 1. 기호 및 숫자, 알파벳을 조합한 최소 암호길이를 7자리 이상으로 설정하여라. => "제어판>관리도구>로컬 보안 설정" "계정 정책>암호 정책"에 정책중에서 "암호는 복잡성을 만조해야함"을 "사용"으로 설정 "최소 암호 길이" "7"로 설정 2. 패스워드 재 사용 금지를 위해 이전 패스워드 3개를 기억할 수 있도록 설정하여라. => "제어판>관리도구>로컬 보안 설정" "계정 정책>암호 정책"에 정책중에서 "최근 암호 기억"을 "3"으로 설정 3. 패스워드 유출 사고를 대.......

추가적인 비용없이 XP 성능을 향상시키는 10가지 팁 [내부링크]

추가적인 비용없이 XP 성능을 향상시키는 10가지 팁 이 글은 비스타의 슈퍼패치와 레디부스트의 대체 솔루션으로 각광받고 있는 eBoostr에서 작성한 '10 Simple Ways To Speed Up Your Windows XP'(사이트 리뉴얼로 URL이 확인이 안됨)을 토대로 작성된 글입니다. Windows XP를 대상으로 eBoostr과 함께 최적화하는 방법을 안내합니다. 주의) 단지 소개만 할 뿐, 일부의 최적화 방법은 기술적인 문제로 인해 개인적으로 동의하지 않는 경우도 있습니다. 1. 데이터 접근 속도를 높이기 위해서 조각 모음을 실행하세요. 단편화(fragmentation)화가 되면 파일 조각들을 이어 맞추기 위해 하드 디스크 검색이 이루어져 응답 시간이 저하되므로 매월(필.......

Windows 불필요한 서비스 제거 [내부링크]

[ Windows 불필요한 서비스 제거 ] Windows 2000, NT4.0, XP 등은 설치후에 반드시 불필요한 서비스를 제거하여 보안침해나 바이러스를 예방할 수 있도록 해야 합니다. 다시 말하자면, Server인 경우 운영하고자 하는 서비스를 제외하고는 제거 또는 사용중지를 해야 합니다. 본 지침서에서는 OS별로 꼭 필요한 서비스와 그렇지 않은 서비스에 대해서 설명하고 불필요한 서비스는 사용하지 않도록 권고합니다. 1. Windows 2000, XP Windows 2000 Server는 [프로그램]-[관리도구]-[서비스], Windows XP / 2000 Professional은 [제어판]-[관리도구]-[서비스]에서 조정할 수 있습니다. 각 서비스 마다 옵션을 설정할 수 있습니다. 해당 서비스를 선.......

윈도우 프로그램에서 프록시 사용[펌] [내부링크]

1. WinInet을 사용하는 경우 InternetOpen에서 설정한다. OS(즉, Internet Explorer)에 설정된 프록시 설정을 그대로 사용할 수 있고. 프로그램에서 독자적으로 프록시 설정을 할 수도 있다. 2. WinHTTP를 사용하는 경우 SetProxy 메소드를 통해서 프록시 설정을 할 수 있다. WinInet과 마찬가지로 시스템 설정, 사용자 설정 둘 다 가능하다. 3. Internet Explorer 컨트롤을 사용하는 경우 Proxy 설정을 별도로 하는 메소드나 방법을 찾지 못했다. 시스템 설정만을 따르는 것 같다. ※ 시스템의 프록시 설정을 변경하는 방법 1. Internet Explorer의 옵션에서 변경 2. 레지스트리의 키를 수정 직접 수정 Software\Microsoft\Windows\CurrentVersi.......

윈도우 레지스트리 설정[펌] [내부링크]

윈도우 레지스트리 설정 - 인터넷 익스플로러 참고 : http://support.microsoft.com/kb/819961/ko 클라이언트 컴퓨터 레지스트리를 업데이트하여 클라이언트 컴퓨터에서 프록시 서버 설정을 자동으로 구성할 수 있습니다. 이렇게 하려면 업데이트할 레지스트리 설정이 포함된 레지스트리 파일을 만든 다음 배치 파일이나 로그온 스크립트를 사용하여 클라이언트 컴퓨터에 레지스트리 파일을 배포해야 합니다. 클라이언트 컴퓨터에서 프록시 서버 설정을 구성하려면 다음 .reg 파일을 만들어서 레지스트리에 프록시 서버 정보를 채우십시오. Regedit4 [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]"MigratePr.......

위험한 공유폴더 관리목적 공유 폴더 [내부링크]

공유 폴더란 무엇인가? 공유해씨는 회사에서 마케팅 업무를 담당하고 있다. 요즈음 새로운 마케팅 시장 조사를 위해 여러 자료들을 팀원들과 같이 조사하고 있는데, 각 팀원이 모은 자료들을 자신의 PC의 '마케팅 사전조사'란 폴더에 모으고 싶어한다. 이를 위해 공유해씨는 각 팀원으로부터 파일을 메일 등으로 따로 받아 저장하는 대신, '마케팅 사전조사' 폴더에 팀원 모두가 접근하여 파일을 저장하거나 볼 수 있도록 '공유' 설정을 하기로 하였다. 나관리씨는 팀원들의 PC를 관리하는 업무를 수행하고 있다. 나관리씨는 팀원들에게 공통으로 필요한 프로그램들을 '프로그램 배포' 폴더에 모아놓고 개인들이 가져다가 사용할 수 있도록 '공유.......

arp 헤더 만들기 [내부링크]

ARP 헤더 ETHERNET HEADER + ARP HEADER 로 REQUEST 소스 만들기~ #include <stdio.h>#include <sys/socket.h>#include <net/if.h>#include <net/if_arp.h>#include <linux/if_ether.h>#include <linux/if_packet.h>#include <string.h> struct eth_hdr{ unsigned char h_dest[6]; //destination ether addr unsigned char h_source[6]; //source ether addr unsigned short h_proto; //packet type id filed} __attribute__((packed)); struct arp_hdr{ unsigned short ar_hrd; //hardware type : ethernet unsigned short ar_pro; //protocol : ip unsigned char ar_hln; //hardware size unsigned .......

펌 IP주소 체계(IPv4) [내부링크]

요즘은 IP v4의 주소가 조만간 모자랄 것으로 예상되어 IP v6의 도입에 대한 검토가 활발 합니다.IP주소 체계는 총 4bytes(32bits)로 표시하며 한 바이트씩 점(.)으로 분리하여 10진수로 나타냅니다. 예를들면 203.172.112.72와 같이 10진수로 표기 합니다. 하나의 IP주소는 크게 네트워크주소와 컴퓨터주소 두 부분으로 나뉘며 네트워크의 크기나 호스트 컴퓨터의 수에 따라 Class A, B, C, D, Class E등급이 있습니다. 이중 Class A, B, C가 일반 사용자에게 부여 됩니다.IP주소 체계를 이해하려면 10진수, 2진수, 16진수 표기에 대해 잘 이해 하셔야 합니다. 우리가 일상 생활에서 가장 많이 쓰는 숫자 체계는 10진수입니다. 10진수는 0에서 9.......

안철수 교수의 첫 백신 소스코드(번역) [내부링크]

만우절 기념으로 진짜 http://translate.google.co.kr/ <---- 요기서 번역한거 올려요~ 혹시 소스가 해석되는 분들은 해석된 부분 댓글좀 달아주세요~ 제 수준에선 진짜 오른쪽 처럼만 보이네요..... 배운다고 배운... 어셈이건만.... ㅜ_ㅠ,, ; VACCINE.ASM vaccine program for (c) Brain;; by Ahn Cheolsoo;; computer : IBM - PC/XT/AT; language : Microsoft Macro Assembler 5.0; creation : 1988. 6. 10.; drive equ 0 ; drive A read equ 2 ; function number of INT 13h write equ 3 ; function number of INT 13h boot equ 1 ; boot sector FAT equ 2 ; start of FAT dir1 equ 6 ; start of root directory dir2 equ 1 ; sector of .......

C++ 기초 void void void void void void [내부링크]

char* Vending(int x) // 함수의 머리 부분 char면 아래에서 반환값 스타일 지정하는 거.// 생략 하면 int 고 void 넣어 주면 리턴값 없을때!! { // 함수 시작if ( x == 1 ) return "커피";else return "유자차";} //함수 끝. vending(void) 함수 머리부분에 이렇게 해주면 입력값이 없는 것으로 간주 됨. 생략해도 괜찮음.

UpdateData 난 왜 이런게 헷갈릴까.... [내부링크]

에디터에서 변수로 할땐 펄스변수에서 에디터로 보낼땐 트루!!

hook 예제 uid 변경 [내부링크]

#include <unistd.h>#include <sys/types.h> uid_t getuid(void){ return 9999;} 필요한 리눅스 명령어idenvexport LD_PRELOAD =/root/hook.sounset LD_PRELOADobjdump -d hook.so

Import REConstructor 사용법 for 올리디버거 [내부링크]

IAT / PE Rebuilding [ IAT and portable executable rebuilding... ]Import REConstructor 1.7e FINAL Download Import REConstructor 사용법 1) 팩킹된 프로그램 실행 2) Import REConstructor 프로그램 실행 3) Attach to an Active Process 에서 실행중인 프로그램 선택 4) OEP에 알고있는 OEP값 입력 (이때, image base 값 제외) 5) IAT AutSearch 클릭 6) Get Imports 버튼 클릭~ 7) Show Invalid 버튼 클릭 8) Imported Functions Found리스트 박스의 내용 확인..... valid:YES <-- 완료..... valid:NO <-- 마우스 오른쪽 버튼 클릭해서 Trace Level1 선택 다시 Show Invalid 버튼 클릭9) Imported Functions Found 리스트 박스의 내.......

icmp 만들기 [내부링크]

#include <stdio.h>#include <sys/socket.h>#include <net/if.h>#include <net/if_arp.h>#include <linux/if_ether.h>#include <linux/if_packet.h>#include <string.h> struct eth_hdr{ unsigned char h_dest[6]; //destination ether addr unsigned char h_source[6]; //source ether addr unsigned short h_proto; //packet type id filed} __attribute__((packed)); struct ip_hdr{ unsigned char ip_vl; //한 바이트 안에 두개의 값을 갖고 있다.//IPv4용 패킷인지 IPv6용 패킷인지 식별 & Header 길이 0x45 -> 4는 버젼 / 5는 shift 2한 값 ip헤더 사이즈 총 20바이트//ip 옵션은 필수 항.......

기반 클래스, 파생 클래스, protected, private의차이, public 상속과 private 상속 [내부링크]

구현하고자 하는 클래스간에 계층관계가 성립하면, 상위 레벨에 있는 클래스를 먼저 구현하고, 하위 레벨에 있는 클래스는 상위 클래스에 있는 모든 특성을 전달 받아 만들 수 있다. 상위 레벨 클래스 = 기반 클래스 그 클래스에서 상속 받아 만든 클래스 = 파생 클래스 ex) class BaseClass {public://멤버 변수int BaseVariable1;int BaseVariable2; //멤버 함수BaseClass( ); //생성자 함수~BaseClass( ); //소멸자 함수void BaseFunction1( );void BaseFunction2( ); }; 위의 기반 클래스(BaseClass)에서 상속 받아 보도록 하겠습니다. class DerivedClass : public BaseClass{int DerivedVariable;void DerivedFunction( );}; 위와 같이 파.......

멤버 함수의 재정의(Overriding) [내부링크]

함수 재정의에 의한 기능 수정 상속과 더불어 클래스 라이브러리의 유용성을 한층 더 증대 시켜주는 C++의 특징 멤버 함수의 재정의 기능!!!예) 이미 만들어진 클래스에 원하는 모든 기능이 다 들어 있는데, 그 중에 뭔가 하나가 부족하거나 마음에 안 든다고 한다면, 이럴 때는 이 클래스에서 상속을 받아 파생 클래스를 만들고, 마음에 안 드는 함수만 고쳐서 사용 할 수 있습니다. Point x, y 만 존재하는 클래스에 좌표 z를 추가하여 3차원 공간 상의 점의 좌표를 저장할 수 있는 클래스를 만들어 보겠습니다. class point{public:...int m_nX, m_nY; // x, y 좌표}; 위의 클래스를 상속받아 class Point3D : public Point{public:int m_nZ;}.......

오버로딩(Overloading)과 재정의(Overriding) (작성중...) [내부링크]

오버로딩 Overloading : 너무 많이 싣다.오버라이딩 Overriding : 무시하다 사전적의미로는 뭔말인지 모르겠다... 오버로딩 매개변수 값에 의해 결정!! 이것도 뭔말인지 헷갈린다...-------------------------------------소스로 보는게 짱! int Max(int a, int b){if(a > b) return a;else return b;} 오버로딩이란 하나의 함수명에 비슷한 기능을 하면서 넘겨 받는 매개변수가 서로 다른 함수를 두개 이상 정의 하는 것을 말합니다. 한마디로 같은 이름이지만, 매개변수 타입을 다르게 하는 함수 이것을 오버로딩이라고 한다. --------------------------------------- 그러면 오버라이딩(재정의)이란??? 재정의는 기반 클래스에 이미 만들.......

가상 함수(Virtual Function), 정적 바인딩, 동적 바인딩 [내부링크]

바인딩이라는 용어를 알아야 합니다. 함수를 호출하는 부분에서 함수가 위치한 메모리 번지를 연결시켜 주는 것을 바인딩 이라고 합니다. 함수를 바인딩 하는 데는 다음과 같은 두 가지 방법이 있습니다. 정적 바인딩, 동적 바인딩 정적 바인딩일반적인 함수는 실행 파일을 만들 때 바인딩을 할 수 있습니다.즉, 컴파일을 해서 실행 파일을 만드는 단계에서 함수를 호출하는 부분과 그 함수가 저장되는 부분을 연결시킵니다.이와 같이 실행 파일을 만들 때 호출될 함수로 점프할 번지가 결정되어 바인딩 되는 것을 정적 바인딩 이라고 합니다. 동적 바인딩실행 파일을 만들 때는 바인딩이 되지 않고, 보류 상태로 두었다가 프로그램이 실행될 때.......

inline 함수 [내부링크]

inline 함수란일반 함수와 달리 어느 한 곳에 자리를 잡고, 그 번지로 점프해서 실행되는 것이 아니라,함수를 호출하는 위치마다 코드가 통째로 복사되어 들어간다. 장점 : 프로그램 수행 속도가 빨라진다. 단점 : 함수가 호출되는 부분마다 코드가 복사되어 들어가기 때문에, 호출하는 부분이 많아질수록 프로그램의 실행 파일 크기가 커지게 된다. inline 함수 언제 사용할까?빈번히 호출되는 함수는 inline 함수로 만드는 것이 효과적 이다.함수의 크기가 매우 작은 경우에 사용하는 것이 좋다. 만드는 방법1. 묵시적인 방법 헤더파일에 만드는 방법 class Point{int m_nX, m_nY;void SetPosition(int x, int y) { m_nX = X; m_nY = y; };}; 2.......

MFC 템플릿 사용 선언 구현 [내부링크]

Show(); 라는 함수 한개를 가지고 아래와 같은 결과를 얻고자 할때 사용 dPosition.Show(); //int nPosition.Show(); //double --------------------- #include "Point.h" void main(){ // 인스턴스 생성 Point <double> dPosition; Point <int> nPosition; // 변수 값 초기화 dPosition.SetPosition(10.45, 30.52); nPosition.SetPosition(50, 30); // 현재 좌표 출력 dPosition.Show(); nPosition.Show();} ------------------------------ #include <iostream.h> template <class type> class Point {public: // 멤버 함수 void SetPosition(type nX, type nY); void Move(type nX, type nY); void Show(); protected.......

Oncreate() OnInitialUpdate() OnInitdialog() 차이 [내부링크]

OnCreate()나 OnInitdialog()는 WM_CREATE, WM_INITDIALOG 메세지에 대한 핸들러 함수이다.윈도우, 다이얼로그가 생성하면 불리워지는 함수이다.OnInitialUpdate()는 메시지에 대한 핸들러 함수가 아니고 가상함수이다.뷰가 윈도우를 생성하고 Doc에서 호출되게 된다.SDI MDI는 뷰, 프레임, 도큐먼트가 연관되어 동작되어진다.WM_CREATE 메시지를 받았을 때 처리할 수 있지만 뷰는 도큐먼트(데이터)에 의해서 초기화를 해주고시작하는게 순서일 것이다. 데이터 부분이 준비가 되었다는 것을 확인해야 하기 때문에... 일반적으로 뷰에서 초기화는 OnInitialUpdate()에서 해주는 게 맞다는 얘기..새로운 클래스 같은 경우는 OnCreate()에 초기화를.......

this 포인터 의 용도 [내부링크]

(사전 지식 : 인스턴스, 클래스) 어떤 클래스의 멤버 함수 내에서 다른 클래스에 자기 자신을 매개변수로 넘겨줘야 할 필요가 있을 때 사용한다.-------------------------------------------------#include <iostream.h> class Where{public:int data;int PrintPointer();}; void Where::PrintPointer(){cout << "오브젝트의 주소는 " << this << " 번지입니다.\n";} void main(){Where a, b, c; a.PrintPointer();b.PrintPointer();c.PrintPointer();} 실행결과 >오브젝트의 주소는 0x0013FF7C 번지입니다.오브젝트의 주소는 0x0013FF78 번지입니다.오브젝트의 주소는 0x0013FF74 번지입니다.Press any key to cont.......

C++ 클래스의 캡슐화 / 인스턴스 생성 방법 / C++ 기본 초보자를 위한 강좌 [내부링크]

클래스 사용시 필요한 3가지 클래스를 선언하는 부분(보통 헤더에 함.)클래스르 구현하는 부분클래스를 사용하는 부분 Ex) 클래스의 선언( 주로 헤더에 )class Point {public:// 멤버 변수int m_nX;int m_nY; // 멤버 함수void SetPosition(int nXm int nY);void Move(int nX, int nY);void Show();}; Ex) 클래스의 구현 ( cpp 파일 )#include <iostream.h>#include "Point.h" void Point::SetPosition(int nX, int nY){ m_nX = nX; m_nY = nY;} void Point::Move(int nX, int nY){ m_nX += nX; m_nY += nY;} void Point::Show(){ cout << "X=" << m_nX <<", Y=" << m_nY << "\n";} Ex) 클래스의 사용 ( cpp.......

생성자 함수와 소멸자 함수의 호출 되는 시기와 static 인스턴스의 생성과 소멸 / 생성자 함수에 매개변수 넘겨주기 [내부링크]

생성자 함수와 소멸자 함수의 타이밍~ 어떤 타이밍 생성 타이밍~!! class Point { Point (); //생성자 함수 virtual ~Point(); //소멸자 함수 ... }; ---------------- 아래 글 잘 이해가 안가면, 요 밑에 인스턴스의 생성과 소멸 읽어 보구 다시 보면 쉽습니당~ 생성자와 소멸자가 호출되는 시기는 클래스의 인스턴스가 전역, 정적, 지역 변수 인지에 따라 달라집니다. 생성자 함수는 인스턴스가 생성될 때 호출되고, 소멸자 함수는 인스턴스가 소멸될 때 호출 됨. 소멸자는 항상 virtual 를 붙어 주어야 합니다. 이게 필요한 이유는 역할은 무엇인지??? 생성자 함수에는 필요한 메모리를 할당 받거나 변수의 값을 초기화 하는 등의 초기화 루틴.......

정적 멤버 변수 [내부링크]

정적 멤버 변수는 그 클래스의 모든 인스턴스에 의해 공유. class--------------------------------class Point {public: // 생성자, 소멸자 함수 Point(); Point(int nX, int nY); virtual ~Point(); // 멤버 함수 void SetPosition(int nX, int nY); void Move(int nX, int nY); virtual void Show(); protected: // 멤버 변수 int m_nX, m_nY; private: // 정적 멤버 변수 static int m_nCount;};--------------------------#include <iostream.h>#include "Point.h" int Point::m_nCount = 0; Point::Point(){ m_nX = 0; m_nY = 0; m_nCount++; cout << "생성자 호출됨. 현재 총 " << m_nCount << "개의 인스턴스 존.......

[MFC]펌 프로그램의 뼈대를 이루는 클래스들 간의 상호 참조 [내부링크]

1. CWinApp 참조 AfxGetApp 함수는 CWinApp 파생클래스의 인스턴스 포인터를 반환해 준다. CWinApp* AfxGetApp(); 2. 메인 프레임 윈도우 참조 AfxGetMainWnd 함수는 메인 프레임 클래스의 인스턴스 포인터를 반환해 준다. CWnd* AfxGetMainWnd(); 3. 뷰에서 프레임 윈도우/다큐먼트 참조 뷰에서 다큐먼트 참조 CDocument* CView::GetDocument() const; GetDocument()는 CView 클래스의 멤버 함수이다. 4. 뷰에서 자식 프레임 윈도우 참조 뷰 클래스에서 그 뷰를 둘러싸고 있는 프레임 윈도우를 참조하려면 GetParentFrame 함수를 사용한다. 프레임 윈도우는 비단 뷰뿐 아니라, 일반적인 윈도우를 둘러싸는 틀로써 사용될 수 있기 때문에 GetPare.......

const 포인터 pointer 헷갈린다. [내부링크]

const란 constant(상수) 용어의 처음 다섯 글자를 따서 만든 예약어로서 일반 변수나 포인터 변수 등을상수화시키는 용도로 사용합니다. 일반적으로 변수나 포인터 변수를 선언하면 필요에 따라 변수가 가지고있는 값을 바꿀 수 있습니다. 그러나 프로그램을 구현하다보면 프로그램의 목적에 따라서 변수의 값이바뀌지 않고 상수화되어야 하는 경우가 있는데 이 때 사용하는 방법 중 하나가 const 키워드 입니다.const 키워드가 쓰이는 용법은 여러 가지가 있습니다. http://www.tipssoft.com/bulletin/board.php?bo_table=FAQ&wr_id=673 http://gh0stsp1der.tistory.com/38 위 사이트를 참조 했습니다. 포인트가 가르키는 값을 상수화 and 주.......

나만의 MFC 강좌-16(AfxGetMainWnd()함수 와 스레드) 펌-http://blog.naver.com/jytkm2/120015672485 [내부링크]

다른 함수와는 달리 AfxGetMainWnd()함수는 스레드와 관련이 있어 주의하여야 한다.이함수의 내부를 보면 다음과 같이 되어 있다._AFXWIN_INLINE CWnd* AFXAPI AfxGetMainWnd(){ CWinThread* pThread = AfxGetThread(); return pThread != NULL ? pThread->GetMainWnd() : NULL;}내부에서 AfxGetThread()함수를 사용하는것을 볼수가 있다.이것은 현재 스레드의 GetMainWnd()함수를 호출한다.이것은 다른 스레드에서 메인 윈도우의 핸들이 필요할때는 문제가 된다.즉 다른 스레드에서 다음과 같이 AfxGetMainWnd()함수를 호출하면 메인 윈도우의 핸들을 얻을수가 없게 된다.이럴때는CWinApp *p = AfxGetApp();CWnd *MainWnd = p->GetMainWnd.......

[MFC] 펌 포인터 얻기 [내부링크]

저도 초보 개발자중 한명이지만 아는 한도내에서 설명드릴께요.. SDI 프로젝트를 만들면 기본적으로 생성되는 4개의 클래스.. app, doc, mainframe, view는 각각의 역활이 정해져있습니다. app는 인스턴스관련해서 프로그램 실행시 가장 먼저 실행되는 클래스입니다. 인스턴스나 템플릿, 실행제어 등 실행에 관계된것을 담당하고 있습니다. doc는 파일및 데이타처리를 담당하는 클래스입니다. 파일 입출력, 공용으로 사용해야할 데이타등은 이곳에서 관리합니다. mainframe은 윈도우를 담당하는 클래스입니다. 윈도우에 있는 메뉴, 툴바, 스테이터스바등 윈도우의 전체적인 것을 관리합니다. 흔히 NonClient 영역으로 알고 있는 부분과 윈도우 안.......

[MFC펌] [내부링크]

MFC를 사용하다보면 컨트롤 영역을 구해야 할 경우가 종종 생긴다. 근데 헷깔려도 너무 헷깔린다는거~ 그래서 준비했다. 아주 쉽게 그림으로 설명한 WindowRect, ClientRect 사용 예 1. 윈도우 기준 절대 좌표 CRect rect; GetDlgItem (nID)->GetWindowRect(&rect); 2. 다이얼로그 영역 안의 컨트롤의 상대좌표 CRect rect; GetDlgItem (nID)->GetWindowRect (&rect); ScreenToClient (&rect); 3. 컨트롤의 Client(0,0에서 시작하는) 좌표 CRect rect; GetDlgItem (nID)->GetClientRect (&rect); 이제 실 수 하는일 없겠죠?