#include <iostream>
using namespace std;
// Single Line Comment
int main() {
cout << "C++ is better than C. \n";
return 0;
}
cout << 랑 << as a bit-wise left-shift operator 로써 operator overloading에 해당한다
#include <iostream>
using namespace std;
class Person {
char name[30];
int age;
public:
void getdata(void);
void display(void);
};
void Person::getdata(void) {
cout << "Enter name: ";
cin >> name;
cout << "Enter age: ";
cin >> age;
}
void Person::display(void) {
cout << "\nName: " << name << "\nAge: " << age;
}
int main() {
Person p;
p.getdata();
p.display();
return 0;
}
Person class에 관하여
main 함수에서는 인스턴스를 생성후 이를 이용해서 호출할 수 있다
call-by-reference
void swap(int& a, int& b) {
int t = a;
a = b;
b = t;
}
swap(m, n);
call-by-address
void swap(int* a, int* b){
int t = *a;
*a = *b;
*b = t;
}
swap(&m, &n);
int* p = new int[10];
int** p2 = new int*[10];
for (int i = 0; i < 10; i++) {
p2[i] = new int[5];
}
int* p = new int[10];
delete[] p;
int** p2 = new int*[10];
for (int i = 0; i < 10; i++) {
p2[i] = new int[5];
}
for (int i = 0; i < 10; i++) {
delete p2[i];
}
delete[] p2;
int add(int a, int b) { return a + b; }
int add(int a, int b, int c) { return a + b + c; }
int main(){
cout << add(5, 10) << endl;
cout << add(15, 10, 30) << endl;
return 0;
}
함수이름이 같지만 매개변수가 달라서 다른 기능을 하는 것을 의미함
inline double cube(double a) { return a * a * a; }
int main(){
double y = cube(3);
return 0;
}
메모리 비용을 줄이며 더 빠르게 동작할 수 있다
이는 다음코드와 같은 내용이다
int main(){
double y = 3 * 3 * 3;
return 0;
}