반응형

프로그램 개발을 할때 IDE 를 사용하여 개발을 하게 됩니다.

우선 IDE가 무엇인지 모르시는 분들을 위해



IDE( Integrated Development Environment ) - 통합 개발 환경

통합개발환경은 개발자가 소프트웨어를 개발하는 과정에 필요한 모든 작업을 하나의 소프트웨어에서 처리할 수 있는 환경을 제공한다. 초기 소프트웨어 개발 시스템은 코드 편집기, 컴파일링, 디버깅 등과 같은 개발 과정을 각각의 프로그램에서 사용했으며 콘솔을 통한 개발이 불가능했다.

[네이버 지식백과] IDE [Integrated Development Environment] (두산백과)



네이버 지식백과에서는 위와 같이 정의를 하고 있는데 쉽게 말해서

편리한 개발 환경 정도로 생각하시면 될거 같습니다.


언어마다 각자에 맞는 IDE를 설치하여 사용하는데 python의 경우 대표적으로 pycharm이 있습니다.

pycharm 뿐 아니라 notepad++, 비주얼 스튜디오, 이클립스 등이 있습니다.


어떤 IDE가 좋은지 찾아보다가 pycharm을 추천하시는 분들이 많아 pycharm을 설치하도록 하겠습니다.


pycharm 다운로드 : https://www.jetbrains.com/pycharm/download/index.html#section=windows



유료버전과 무료버전이 있는데 무료 버전을 설치하겠습니다.

나중에 기능이 부족하다 싶으면 유료버전을 사용하시면 되겠습니다.

download를 클릭하시면 바로 다운이 시작되고 완료되면 실행하시면 됩니다.



설치 화면

넥스트만 계속 눌러주면 되고

중간에 캡처를 못했는데 32bit인지 64bit인지 선택하는화면이 나오는데 자기에 맞는 환경을 체크하면 된다.














반응형

'programing > python' 카테고리의 다른 글

[PyQt5] .ui파일 .py로 변환  (0) 2017.04.27
[PyQt5] ui 파일 만들기  (0) 2017.04.27
[python] anaconda 설치  (0) 2017.04.27
[python] 강의 사이트  (0) 2017.04.20
[python] 파이썬 설치  (0) 2017.04.20
반응형

파이썬 처음 입문하실때 시작부터 차근차근 배우기 좋은 사이트를 정리


헬로월드 : http://tryhelloworld.co.kr/

 - 강의 하나하나가 짧게 이루어져 지루하지 않다.

 - 실습이 강의 중간 중간에 있어서 강의 내용 복습에 좋다.


인프런 : https://www.inflearn.com/

 - 여기는 여러 언어의 강의가 있는데 유료도 있고 무료도 있다.

 - 유료라서 나는 안들어 봤다. 무료만 들어봄.


오픈튜토리얼 : https://opentutorials.org/module/1569

 - 웹개발 공부하면서 많이 들렀던 사이트로 목소리가 매우 좋으신 분이 강의를 해주십니다.


파이썬을 이용한 시스템 트레이딩(기초편) : https://wikidocs.net/book/110

 - PyQt 설명이 잘된 곳을 찾다가 우연히 발견한 곳

 - 주식에 관심있이 있다면 재밌게 배울 수 잇는 곳

 - 여기보다 PyQt 를 쉽게 잘 설명한 데는 아직 못찾음...

반응형

'programing > python' 카테고리의 다른 글

[PyQt5] .ui파일 .py로 변환  (0) 2017.04.27
[PyQt5] ui 파일 만들기  (0) 2017.04.27
[python] anaconda 설치  (0) 2017.04.27
[python] IDE 설치 - pycharm  (0) 2017.04.20
[python] 파이썬 설치  (0) 2017.04.20
반응형

Windows 환경에서 파이썬을 설치해 봅시다.


URL : https://www.python.org/



위의 공식 사이트에서 Downloads로 이동합니다.



파이썬은 3.X.X 버전과 2.X.X 버전으로 나뉘는데 원하시는 버전을 설치하시면 되지만

저는 3.X.X버전을 설치하도록 하겠습니다


작성일 기준 버전3.6.1 입니다.

버전을 선택하시면 자동으로 다운로드가 시작되고 다운로드 후 실행하시어 설치하시면 됩니다.



설치파일을 실행 시키면 처음에 뜨는 화면인데 여기서 주의하셔야할 사항은 'Add Python 3.6 to PATH'를 체크해 주시는 겁니다.

환경변수를 추가해주는 것인데 환경변수 추가하실 수 있으신분은 빼셔도 되기는 하지만 그렇지 않다면 꼭 체크를 해주시기 바랍니다.


설치가 잘 되었는지 확인을 해보겠습니다.


'윈도우'키 + 'R' 을 누르시면  



'실행' 창이 뜨는데 여기서 powershell 을 실행 시켜줍니다.



위의 화면이 'powershell' 화면이고 python 이라는 명령을 쳤을 때 위의 화면같이 뜨면 정상적으로 설치가 된것입니다.

설치할때 체크 하셨던 부분(환경변수)을 빼셨다면 python이 설치된 경로에서만 사용이 가능합니다.



반응형

'programing > python' 카테고리의 다른 글

[PyQt5] .ui파일 .py로 변환  (0) 2017.04.27
[PyQt5] ui 파일 만들기  (0) 2017.04.27
[python] anaconda 설치  (0) 2017.04.27
[python] IDE 설치 - pycharm  (0) 2017.04.20
[python] 강의 사이트  (0) 2017.04.20
반응형

배열을 복사해야 하는 상황이 생겼다.

배열 길이가 무려 uint16_t 640*640 의 길이기에 반복문을 쓰기가 겁이 낫다.

처음에는 반복문을 썻는데 집에와서 생각해보니 memcpy와 같은 함수가 있을 것만 같았다.

memcpy는 byte 단위로 복사를 하는거라 다른 방법을 찾던중

std::copy() 함수를 발견했다.

 

매우매우 간단간단.

 

소스코드를 봅시다

#include <iostream> 
#include<algorithm>  
using namespace std;  
int main() 
{
	uint16_t src[16], dst[16];
    for (int i = 0; i < 16; i++) 	
    { 		
    	src[i] = i * i;
    }  	
    copy(src, src + 16, dst);  	
    for (int i = 0; i < 16; i++) 		
    	cout << i << " : " << dst[i] << endl;  	
        
    return 0; 
 }

 

우선 <algrithm> 을 추가 해주어야 합니다.

배열타입은 원하는 타입으로 하면 됩니다.

 

사용법은

 

copy(src  시작, src 마지막 +1, dst);

이렇게 하면 됩니다.

 

전체를 하려면

copy(src, src+길이, dst);

 

요래 해주면 됩니닷.

 

memcpy 로도 되는거 같긴한데 길이 계산을 해주는 것보다는

copy()를 쓰는게 좋을듯합니다.

 

길이가 짧은거는 반복문을 쓰는것도 나쁘지 않을듯.

반응형
반응형

출처 : https://msdn.microsoft.com/ko-kr/library/ms235636.aspx

MSDN 예제를 가져다 쓰고 내가 원하는 기능이 가능한지 테스트를 해볼것입니다.


아.. DLL 어렵도다. 일단 만들면서 익히도록 합시다.


뭐 일단 프로젝트 부터 쭈루룩



자 이렇게 만들고 본격적으로 코딩을 해보아요...

위의 출처 MSDN에 나온 설명을 토대로 이런 저런 내가 필요한 작업들을 테스트 해보아요


헤더 부터 작성을 해봅시다.


MathFuncsDll.h


1.dllimport / dllexport

여기서 보면 dllimport / dllexport 가 있는데.. 멀까 ? 

내가 알기로는 '내보내기' 인데.. 다음에 정리 하는걸로

바쁘니까..


2. namespace

 이건 cpp 공부한 사람이라면 .. 기본이겠죠 ? 

 음.. 나중에 c#에서 c++ dll 쓰는것도 정리 할건데

 그때 namespace가 필요..........했었던것 같은 느낌이 


3. Class

 함수를 여기다가 정의 하면 됩니다.


이제 cpp 파일을 작성해 보아요.


MathFuncsDll.cpp


1. 헤더 추가

위에 작성한 헤더파일을 꼭 추가해주어야 합니다.


2. 클래스::함수() 

클래스내 포함된 함수를 정의하는 겁니다.


요래 하고서 빌드를 하면


.dll, .lib 파일이 생성이 되는 것을 확인할 수 있습니다.

더 여러개 파일이 생성되지만 이 2개와 아까 작성한 헤더파일만 필요합니다.



DLL 사용하기

위에서 만든 dll을 사용해 보자

프로젝트를 만들어서 테스트를 해봅시다.



dllTest.cpp



실행이 안될 것이다. dll을 추가해주어야 하기 때문이지

위의 파일들을 테스트 하기위해 만든 프로젝트에 복사해서 넣어주자.





복사를 해주고 한가지 더 해주어야 한다.

.lib 파일 을 등록해 주어야 하는데

코드에서 입력해도 되지만 뭐 이 방법도 나름 많이 쓰므로 사용해 보자.





자 이제 실행을 하면...  잘 된다.





























반응형
반응형

vector 복사하기..


두가지 방법을 찾았다. copy()를 이용한 복사와 assign()을 이용한 복사이다.


출처 : http://ogoons.tistory.com/75

// copy() 를 이용한 복사

 

destVector.resize((int)(sourceVector.size()));

std::copy( sourceVector.begin(), sourceVector.end(), destVector.begin() );

std::copy( sourceVector.begin() + 2, sourceVector.begin() + 5, destVector.begin() );


// assign() 을 이용한 복사

 

destVector.clear();

destVector.assign( sourceVector.begin(), sourceVector.end() ); // 전체 복사

destVector.assign( sourceVector.begin() + 1, sourceVector.begin() + 4 );



내 소스 코드에 적용을 한 거슨 assign()함수를 이용한 복사다.

몇번째의 값부터 몇개를 복사 해야 하는 상황이기 때문이다.

openCV 와 함께 사용하였다.



결과






반응형

+ Recent posts