抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

misakivv的博客

霜蹄千里骏,风翮九霄鹏

C++基础01

1
2
3
4
5
6
C语言中:
输入设备-->输入流-->scanf-->变量
变量-->printf-->输入流-->输出设备
C++语言中:
输入设备-->输入流-->cin-->变量
变量-->cout-->输入流-->输出设备
1
2
3
4
5
6
7
8
9
10
11
12
13
14
cout语法形式:
cout<<x<<endl;
x可以是任意的数据类型,甚至是写成表达式,endl是换行符
错误的写法:
cout<<x,y<<endl;
在变量键不能使用","
正确的写法:
cout<<x<<y;
cin语法形式:
cin>>x;
x可以是任意的数据类型
cin>>x>>y;


image-20231101140641409.png
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
linux@ubuntu:~/11_1$ vim test01.cpp
linux@ubuntu:~/11_1$ g++ test01.cpp -o test01
linux@ubuntu:~/11_1$ ./test01
20
10
linux@ubuntu:~/11_1$ cat test01.cpp
#include<iostream>
using namespace std;
int main()
{
int x=20,y=10;
cout<<x<<endl<<y<<endl;
return 0;
}
linux@ubuntu:~/11_1$

image-20231101135559108.png
1
2
3
using是编译指令,声明当前命名空间的关键词。可以从字面上理解,翻译成使用。
std::cin
std::cout
image-20231101141242080.png
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
linux@ubuntu:~/11_1$ cat test02.cpp 
#include<iostream>
using namespace std;
namespace A
{
int x=1;
void fun(){
cout<<"A namespace"<<endl;
}
}
using namespace A;//声明使用命名空间A
int main()
{
fun(); //在前面声明了命名空间A后,才能直接使用fun()函数;否则要写成A::fun();
A::x=3; //将A命名空间下的x重新赋值为3
cout<<A::x<<endl; //打印A命名空间下x的值
A::fun(); //调用A命名空间下fun()。
return 0;
}

面向对象的三大特征:继承,多态,封装

类和对象

1
类是C++的核心特征,通常被称为用户定义的类型。类用于指定对象的形式,包含数据表示法和用于处理数据的方法。类中的数据和方法被称为类的成员。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
linux@ubuntu:~/11_1$ cat test03.cpp
#include<iostream>
#include<string>
using namespace std;

class Dog //定义一个Dog狗,起的类名要尽量贴近这个类,见名知意
{
public : //访问限定符public(共有的)
string name; //定义一个字符串变量,要使用头文件string
int age;
void run(){ //run()是为了打印狗的名字和年龄
cout<<"狗狗的名字是: "<<name<<",年龄为:"<<age<<endl;
}
};
int main()
{
Dog dog1; //从zhai中实例化一个对象dog1(随意起名)
dog1.name="雪碧"; //为dog1的成员变量赋值
dog1.age=3;
dog1.run(); //打印dog1的相关变量信息
Dog *dog2=new Dog(); //从堆中实例化对象,使用关键字new的都是从堆中实例化对象
if(NULL==dog2){ //从堆中实例化对象需要开辟空间,指针会指向那个内存
return 0; //如果new没有申请成功内存空间,程序会自动退出
}
dog2->name="柴柴"; //为dog2的成员变量赋值
dog2->age=2; //为dog2的成员变量赋值
dog2->run(); //为dog2的成员变量赋值
delete dog2; //释放内存
dog2=NULL; //将dog2重新指向NULL
return 0;
}

blob

评论