본문 바로가기

전체 글

[C++] 자료형 (묵시적형변환) 변수의 사용 영역int a; // 비지역변수 - 선언된 이후 프로그램 전체 영역에서 사용 가능static int b{10}; // 비지역변수 - 선언된 이후 소속 파일의 전체 영역에서 사용 가능int f() { int c{20}, d{30}; // 비지역변수 선언된 이후 소속 블록의 전체 영역에서 사용 가능 { int d{40}; int e{50}; // 지역변수 - 선언된 이후 소속 블록의 전체 영역에서 사용 가능 }} const 한정어변수의 값을 수정할 수 없게 함초기화를 통해서만 값을 정할 수 있음컴파일 시에 값을 알 수 없으면 오류 발생함constexpr 한정어값을 컴파일할 때 평가한다실행 중 값을 평가하는 것에 비해 효율적으로 동작할 수 있게 함모든 인수가 constexp.. 더보기
[Azure] 쇼핑몰 만들기 실습 Web과 WAS의 역할을 하는 mall-vm2 만들기 가상머신 예시]> 보통 일반적으로 80포트 외의 포트는 inbound  방식으로 추가하는 형태로 진행한다. SSH를 열어두면 하기와 같은 경고가 발생한다.You have set SSH port(s) open to the internet.  This is only recommended for testing.  If you want to change this setting, go back to Basics tab.  https://github.com/jaehwachung/cloud_computing/blob/main/knou_mall/web_server/Cloud-init-> 해당 github에서 init yaml copy 붙여넣기 (package, wr.. 더보기
[Azure] 키 자격모음, PostgresSQL 서버 관리 - HSM, KVM: 암호화 키를 어플리케이션에 저장할 때 노출될 위험을 줄이기 위한 장치어플리케이션에 저장하지 않고 그때그때 쓸 수 있도록 해주는 것이 키 자격 증명 모음Key vaults 자격 증명 만들기허가받은 사람만 접근 가능하도록 제한하는 기능 Azure  역할 기반 액세스 제어를 누른다.참고) 자격 증명 모음 액세스 정책(vault access policy)을 누르면 각 사용자에 대해서 어떠한 정책을 사용할 수 있는지 확인할 수 있다. 네트워킹 보안을 위해 선택한 네트워크만 접속할 수 있도록 설정한다.추가한 후에 신뢰할 수 있는 네트워크만 들어올 수 있도록 check한다.Tag는 굳이 설정할 필요 없고, 유효성 검사해준 뒤 배포한다.그런데 리소스를 들어가보면 RBAC에서 작업을 허용하지 않는다.. 더보기
[Linux] Shell Shell명령어 해석기 또는 명령 행 인터페이스로, 사용자와 커널 사이에서 명령어를 해석하여 처리한다Shell script는 텍스트 파일로, 반복적으로 수행되는 작업을 Shell script로 작성할 수 있다.세미콜론(;)을 사용하면 한 라인에 여러 명령을 입력할 수 있다.셸은 Bash를 기본 셸로 사용하며, 일반사용자는 $, root 사용자는 #을 사용한다.Bash shellBourne Again Shell로 Bourne shell의 개선된 버전많은 셸 스크립트의 문법이 Bourne shell에 기반을 둠실행 명령은 /bin/bash기본 셸을 변경할 수 있음chsh -s /bin/sh 셸 명령의 형식> 명령어 옵션 인수대개 명령어는 프로그램의 이름인수는 명령의 수행 대상을 지정하는 것grep "Kild.. 더보기
[c++] C++ 변수의 특징 일반변수, 구조체, 배열, 클래스에 따라 초기화 방법이 다르다.auto→ 컴파일할 때 타입을 결정, 실행 시 오버헤드는 없다.→ 단점: 가독성이 떨어진다. int main(){ int x[5] = {1,2,3,4,5}; auto n = x[0]; // auto : 변수 선언시, 우변의 표현식 조사해서 컴파일러가 타입 결정 } decltype→ ()안의 표현식으로 타입을 결정→ 함수(클래스) 템플릿 등을 만들 때 주로 사용decltype(n) n1; //int n1;배열과 auto//int x[5] = {1,2,3,4,5}; 일 때//auto a = x; //int a[5] = x; //이렇게 결정되었다면 컴파일 에러//int* a = x; decltype(x) d;decltype(x) d1 = x; //.. 더보기
[C++] iosteam 표준 입출력 ## C++ 표준 입출력 c++에서의 표준 함수들은 함수 앞에 std:: 를 붙여주어야 사용할 수 있다. CC++출력printf 함수std::cout 객체변수값 출력%d, %f 필요format 지시어 필요 없음특징 개행 \n\n 또는 std::endl입력scanf 함수- 주소를 전달 (&n)std::cin 객체- 주소가 아닌 n으로 전달헤더파일std::cout 객체C++ 초창기부터 사용되던 표준 출력 객체단점 1: 여러 개 변수 출력시 코드 복잡단점 2: 성능이 느리다 (printf 사용..)#include //stdio.h#include int main(){ int n = 10; double d = 3.4; printf("%d, %f \n", n, d); //c언어 std::co.. 더보기
[c++] std namespace / header file ✔ std namespace max, min 함수 → c++ 표준이 제공하는 함수→ 헤더→  모든 C++ 표준 함수는 "std" namespace 안에 있다. ① 기본 사용- 가장 권장하는 방법// qualified name#include #include int main(){ int n1 = std::max(10, 20); int n2 = std::min(10, 20); printf("%d, %d\n", n1, n2);}② using 사용// qualified name#include #include using std::max;using std::min;int main(){ int n1 = max(10, 20); int n2 = min(10, 20); printf("%d, %d\n", n1, n2);}③.. 더보기
[C++] namespace C언어동일한 이름의 함수는 2개 이상 만들 수 없다.함수의 이름을 변경해야 한다.C++ 언어namespace 문법을 사용하면 관련된 코드(함수, 구조체, 전역 변수 등)을 묶어서 관리할 수 있다.서로 다른 이름 공간에서는 동일한 이름 사용할 수 있다.#include namespace Audio{ void init(){ printf("Init Audio Module\n"); }}namespace Video{ void init(){ printf("Init Video Module\n"); }}int main(){ //init(); Audio::init(); Video::init();}#include "Video.h"// 방법 1. 권장namesp.. 더보기