#include <stdio.h>
#include <stdlib.h>
#include <iostream>
//标准命名空间(包括很多标准的定义)
using namespace std;//命名空间类似于java中的包
//自定义命名空间
namespace NSP_A {
int a = 12;
struct Student {
char name[20];
int age;
};
struct Teacher{
char name[20];
int age;
};
}
namespace NSP_B {
int a = 14;
//命名空间嵌套
namespace NSP_C {
int a = 16;
}
}
int main() {
printf("C++");
//std::cout << "C++" << std::endl;
cout << "C++" << endl;
//使用自定义命名空间
cout << NSP_A::a << endl;
cout << NSP_B::a << endl;
cout << NSP_B::NSP_C::a << endl;
//使用命名空间中的结构体
using namespace NSP_A;
struct NSP_A::Teacher t;
t.age = 10;
Student s;
s.age = 20;
getchar();
return 0;
}
/******************************************************************************/
constexpr auto PI = 3.14;
//圆 (类的使用)
class MyCircle {
//属性(共用权限访问修饰符)
private:
double r;
double s;
public:
void setR(double r) {
this->r = r;
}
//获取面积
double getS() {
return PI * r * r ;
}
};
int main() {
MyCircle c1;
c1.setR(4);
cout << "圆的面积:" << c1.getS() << endl;
getchar();
return 0;
}
/******************************************************************************/
//结构体的使用
struct MyTheacher {
public:
char name[20];
int age;
public:
void say() {
cout << this->age << "岁" << endl;
}
};
结构体和类的区别:类可以继承(new)
void main() {
MyTheacher t1;
t1.age = 18;
t1.say();
getchar();
}
/******************************************************************************/
//布尔类型
void main() {
bool isSingle = true;
cout << isSingle << endl;
if (isSingle)
{
cout << "成立" << endl;
}
else {
cout << "不成立" << endl;
}
int a = 10, b = 20;
//在c++中三目运算符可以为左值,c与java中是不可以的
((a > b) ? a : b) = 50;
cout << b << endl;
getchar();
}
/******************************************************************************/
//引用(重要)
void main() {
int a = 10;
//b就是这个内存空间另外一个别名
//& C++中的引用
int &b = a;
cout << b << endl;
getchar();
}
/******************************************************************************/
//指针值交换
void swap_1(int *a ,int *b) {
int c = 0;
c = *a;
*a = *b;
*b = c;
}
//引用值交换
void swap_2(int &a,int &b) {
int c = 0;
c = a;
a = b;
b = c;
}
//引用示例
void main() {
int x = 10;
int y = 20;
//swap_1(&x,&y);
swap_2(x, y);
printf("%d,%d\n",x,y);
getchar();
}
C++(一):命名空间,类,引用
最新推荐文章于 2023-07-21 16:25:00 发布