2014. 4. 20. 03:04

대학교 2학년이 되어서도 '교환학생'이라는 것은 뭐랄까...

초등학교 시절 어른이 빨리 되고 싶다 정도의 느낌이였다.

해보면 좋을거 같긴한데 내가 꼭 할거 같지는 않는..


그런데 3학년 여름방학때 취업을 위해 공부했던 토익이 예상외로 성적이 잘나왔고,

운이 좋게도 우리 학교는 토익점수만으로도 교환학생에 지원 할 수 있어 지원을 하게 되었습니다.


올해 유독 경쟁률이 매우 증가했다는 이야기에 희망을 반쯤 접고 있었는데 합격 소식을 받았습니다.


아직 한국에 잇는 우리 학교에서만 합격 소식이지만 그래도 마음이 들뜨는건 어쩔 수 없네요...


물가가 비싸다는 프랑스 파리가 되어서 걱정이긴 하지만...

그래도 신나는건 어쩔수가 없지요~~ ㅋㅋ



저 포함해서 총 두명 가네요~~


후기를 읽어보니 재작년에 우리 학교에서 파견가신분이

우리나라에선 ISEP에 처음 간거라고 하던데..


그래서 그런지 정보가 너무 부족하네요 ㅠㅠ



'ExchangeStudnet > 준비하기' 카테고리의 다른 글

ISEP 합격소식!!  (0) 2014.05.21
Application 제출완료.  (0) 2014.05.15
Birth Certificate 받기  (0) 2014.04.29
ISEP 지원 준비해야할거  (0) 2014.04.21
프랑스 ISEP란?  (0) 2014.04.20
Posted by I_co
2012. 2. 11. 16:37
//2012 02 10
//연산자오버로딩총집합!! Operate Overloading!!
//i_co
//Daun..

//영어따위 틀려도... 나만 알아 듣는다면... 휴우 ㅠㅠ

#include<iostream>
#include<stdlib.h>
#include<time.h>
using namespace std;


class Complex 
{
public:
Complex();
Complex(int,int);
friend ostream &operator<<(ostream &,Complex &);
friend istream &operator>>(istream &,Complex &);

Complex operator++();
Complex operator--();
Complex operator++(int);
Complex operator--(int);
Complex operator+(Complex &);
Complex operator-(Complex &);
Complex operator*(Complex &);
Complex operator/(Complex &);

Complex operator+=(Complex);
Complex operator-=(Complex);
Complex operator*=(Complex);
Complex operator/=(Complex);

Complex operator=(Complex);

bool operator==(Complex);
bool operator!=(Complex);
bool operator<(Complex);
bool operator>(Complex);
bool operator<=(Complex);
bool operator>=(Complex);

Complex operator[](int);

void operator()();



private:
int realNum, imaginaryNum;
};

/*****  main ******/

int main()
{
srand(time(NULL));

Complex com1(3,4);
Complex com2;
cout << "Write com2 : ";
cin >> com2;
cout << "com1 : " << com1 << endl;
cout << "com2 : " << com2 << endl;
cout << "(++com1) + com2 " << (++com1) + com2 << endl;
cout << "(com1++) + com2 " << (com1++) + com2 << endl;
cout << "com1 + com2 " << com1 + com2 << endl;
cout << "com1 - com2 " << com1 - com2 << endl;
cout << "com1 * com2 " << com1 * com2 << endl;
cout << "com1 / com2 " << com1 / com2 << endl;
cout << "com1 += com2 "<< endl;
com1 += com2;
cout << "com1 : " << com1 << " com2 : " << com2 << endl;
cout << "com1 -= com2 " << endl;
com1 -= com2;
cout << "com1 : " << com1 << " com2 : " << com2 << endl;
cout << "com1 *= com2 " << endl;
com1 *= com2;
cout << "com1 : " << com1 << " com2 : " << com2 << endl;
cout << "com1 /= com2 " << endl;
com1 /= com2;
cout << "com1 : " << com1 << " com2 : " << com2 << endl;

if(com1 == com2)
cout << "com1 == com2" << endl;
else
cout << "com1 != com2" << endl;

cout << "com1() " << endl;
com1();
cout << "com1 : " << com1 << endl;

cout << "com1[3] " << endl;
com1[3];
cout << "com1 : " << com1 << endl;

return 0;
}


/************ Class Complex *******/


/* Defualt Constructor*/
Complex::Complex()
{
realNum = 0;
imaginaryNum = 0;
}

/* Constructor */
Complex::Complex(int REALNUM, int IMAGINARYNUM)
{
realNum = REALNUM;
imaginaryNum = IMAGINARYNUM;
}




/* Operator Overloading << */
ostream &operator<<(ostream &c,Complex &com)
{
c << com.realNum << ' ' << com.imaginaryNum << 'i';
return c;
}
/* Operator Overloading >>*/
istream &operator>>(istream &c,Complex &com)
{
c >> com.realNum >> com.imaginaryNum;
return c;
}





/* Operator Overloading ++ */
Complex Complex::operator++()
{
this->realNum++;
return *this;
}


/* Operator Overloading -- */
Complex Complex::operator--()
{
this->realNum--;
return *this;
}

/* Operator Overloading ++ */
Complex Complex::operator++(int)
{
int temp = this->realNum;
this->realNum++;
return Complex(temp,this->imaginaryNum);
}

/* Operator Overloading -- */
Complex Complex::operator--(int)
{
int temp = this->realNum;
this->realNum--;
return Complex(temp, this->imaginaryNum);
}






/* Operator Overloading + */
Complex Complex::operator+(Complex &com)
{
Complex temp;
temp.realNum = realNum + com.realNum;
temp.imaginaryNum = imaginaryNum + com.imaginaryNum;
return temp;
}

/* Operator Overloading - */
Complex Complex::operator-(Complex &com)
{
Complex temp;
temp.realNum = realNum - com.realNum;
temp.imaginaryNum = imaginaryNum - com.imaginaryNum;
return temp;
}

/* Operator Overloading * */
Complex Complex::operator *(Complex &com)
{
Complex temp;
temp.realNum = realNum * com.realNum;
temp.imaginaryNum = imaginaryNum * com.imaginaryNum;
return temp;
}

/* Operator Overloading / */
Complex Complex::operator/(Complex &com)
{
Complex temp;
temp.realNum = realNum / com.realNum;
temp.imaginaryNum = imaginaryNum / com.imaginaryNum;
return temp;
}




/* Operator Overloading += */
Complex Complex::operator+=(Complex com)
{
this->realNum += com.realNum;
this->imaginaryNum += com.imaginaryNum;
return *this;
}

/* Operator Overloading -= */
Complex Complex::operator-=(Complex com)
{
this->realNum -= com.realNum;
this->imaginaryNum -= com.imaginaryNum;
return *this;
}

/* Operator Overloading *= */
Complex Complex::operator*=(Complex com)
{
this->realNum *= com.realNum;
this->imaginaryNum *= com.imaginaryNum;
return *this;
}

/* Operator Overloading /= */
Complex Complex::operator/=(Complex com)
{
this->realNum /= com.realNum;
this->imaginaryNum /= com.imaginaryNum;
return *this;
}


/* Operator Overloading = */
Complex Complex::operator=(Complex com)
{
this->realNum = com.realNum;
this->imaginaryNum = com.imaginaryNum;
return *this;
}



/* Operator Overloading == */
bool Complex::operator==(Complex com)
{
if((this->realNum == com.realNum) && (this->imaginaryNum == com.imaginaryNum))
return 1;
else
return 0;
}

/* Operator Overloading != */
bool Complex::operator!=(Complex com)
{
if((this->realNum != com.realNum) && (this->imaginaryNum != com.imaginaryNum))
return 1;
else 
return 0;
}

/* Operator Overloading < */
bool Complex::operator<(Complex com)
{
if(this->realNum < com.realNum)
{
if(this->imaginaryNum < com.imaginaryNum)
return 1;
else
return 0;
}
return 0;
}

/* Operator Overloading > */
bool Complex::operator>(Complex com)
{
if(this->realNum > com.realNum)
{
if(this->imaginaryNum > com.imaginaryNum)
return 1;
else
return 0;
}
return 0;
}

/* Operator Overloading <= */
bool Complex::operator<=(Complex com)
{
if(this->realNum <= com.realNum)
{
if(this->imaginaryNum <= com.imaginaryNum)
return 1;
else
return 0;
}
return 0;

}

/* Operator Overloading >= */
bool Complex::operator>=(Complex com)
{
if(this->realNum >= com.realNum)
{
if(this->imaginaryNum >= com.imaginaryNum)
return 1;
else
return 0;
}
return 0;
}


/*
[] make that realNum and imaginaryNum are changed together. And plus indx to realNum and imaginaryNum.
() make that realNum and imaginaryNum have new number randomly.
*/


/* Operator Overloading [] */
Complex Complex::operator[](int indx)
{
cout << "CHANGE!! " << endl;
int temp = realNum;
realNum = imaginaryNum;
imaginaryNum = temp;

realNum += indx;
imaginaryNum += indx;

return *this;
}

/* Operator Overloading () */
void Complex::operator()()
{
cout << "RANDOM!! " << endl;
this->realNum = (rand() % 9 + 1);
this->imaginaryNum = (rand() % 9 + 1 );
}

'Code > c/c++' 카테고리의 다른 글

[C++]Double Linked List 기본기능만  (0) 2011.12.23
[C++]Game of Snake.  (0) 2011.09.03
[C++]poker  (0) 2011.09.03
[Code] 유클리드 알고리즘(Euclid Algorism)  (0) 2011.08.29
[C++ Code]Swap  (0) 2011.07.28
Posted by I_co
2012. 1. 21. 00:32
1.쿠키 설정 함수

쿠키설정 함수는 브라우저에 어떠한 출력이 되기전에 호출해야 합니다.

(http 헤더에 포함되기 때문)

 

1.1 setcookie()

bool setcookie(string name [, string value [, int expire [, string path [,string domain[, bool secure]]]]])

$id=testId

$lifetime = 60*60*24*30; 

// 60초(1분)*60 = 1시간

// 60*60*24= 하루

// 60*60*24*30 = 30일


http://icoi.tistory.com/script/powerEditor/pages/

$ckName='.test.co.kr'

 예) setcookie( "user_id" , $id , $lifetime  , '/',  $ckName);


1.2 setrawcookie()

bool setrawcookie ( string name [, string value [, int expire [, string path [, string domain [, int secure]]]]])

- php5에서 사용가능

- setcookie()와 거의 동일하나 urlencoded가 자동적으로 이루어 되지 않는다

 

인자

의미

name

쿠키 이름

value

클라이언트에 저장할 데이터

expire

쿠키만료시간(GMT 사용)

지정하지 않으면 브로우저가 닫힐 때 만료

time(),mktime() 함수를 사용하여 시간 설정

path

쿠키의 유효 경로

통상 /(루트)로 설정한다.

domain

쿠키의 유효 도메인

secure

0:비보안 1:보안 연결

 

1.3 return 

정상적으로 전송되었으면 TRUE 반환

아니면 FALSE 리턴

 

2.클라이언트에서 전송된 쿠키 참조

$_COOKIE[name];  è 자동전역배열

$_REQUEST

 

클라이언트로부터 전송된 쿠키 데이터는 register_globals variables_order 환경 설정 변수에 의존하여 자동적으로 PHP 변수로 변환됩니다.

하나의 쿠키 이름에 여러 변수를 지정하고 싶을 때는단순히 쿠키 이름에 []를 추가하면 됩니다.

 

3.예제

 

3.1 쿠키의 설정

<?php

$value = 'lynx';

 

//expire 지정하지 않으면, 쿠키는 세션 종료시(브라우저를 닫을 때)에 만료  

setcookie("user", $value); 

//setcookie("user", $value,time()+3600);  /* 1시간 뒤에 만료 */

//setcookie("user", $value,time()+3600, "/", ".example.com", 1);

?>

 

3.2 쿠키값 읽기

<?php

echo $_COOKIE["user"];

print_r($_COOKIE);  //쿠키에 설정된 값 write

?>

 

 

 

 

 

<?php

// 쿠키를 설정

setcookie("cookie[three]", "cookiethree");

setcookie("cookie[two]", "cookietwo");

setcookie("cookie[one]", "cookieone");

?>

 

 

 

 

 

 

 

3.3 쿠키와 배열

 

<?php

// 쿠키를 읽기

// 페이지가 리로드된 뒤에출력

if (isset($_COOKIE['cookie'])) {

    foreach ($_COOKIE['cookie'] as $name => $value) {

        echo "$name : $value <br />\n";

    }

}

?>

 

 

 

 

 

 

 

 

 

 

출력은

three : cookiethree

two : cookietwo

one : cookieone

 

 

 

 

 

3.4 쿠키 삭제

<?php

// 만료 날짜를 한시간전으로 설정

setcookie ("TestCookie", "", time() - 3600);

?>

 

 

 

 

 

'Code > web' 카테고리의 다른 글

[html+php+mysql]홈페이지 만들기.  (10) 2011.09.03
Posted by I_co