面向对象编程-C++学习笔记01

1、C++

C++ 是一种广泛使用的编程语言,它是由 Bjarne Stroustrup 在 1983 年创建的。C++ 是一种面向对象的编程语言,它是 C 语言的扩展,增加了面向对象的概念和语法。

C++ 是一种高效且通用的编程语言,适用于各种应用程序,包括操作系统、游戏、图形界面、嵌入式系统、实时系统等。C++ 提供了低级别的访问硬件和系统资源的能力,同时也提供了高级别的抽象和封装机制。

C++ 的语法和语义相对复杂,需要一定的学习和实践才能掌握。但是,一旦掌握了 C++,您将能够编写高效、可维护和可重用的代码,为您的软件开发工作带来更多的便利和效益。

2、从C到C++

一个简单的C++程序

//包含C++的头文件
#include <iostream>
using namespace std;
int main() {
   
    cout << "HelloWorld!" << endl;
    return 0;
}

命名空间

为了解决合作开发时的命名冲突问题,C++ 引入了命名空间(Namespace)的概念。

 #include <iostream>
//#include <stdio.h>
//#include <cstdio>

//using namespace std;
namespace A
{
   
	int a = 1;
	void print()
	{
   
		std::cout << "this is namespace A" << std::endl;     //::作用域限定符
	}
}
namespace B
{
   
	int a = 2;
	void print()
	{
   
		std::cout << "this is namespace B" << std::endl;
	}
}

int main()
{
   
	//std::cout << a << std::endl;   //a不是全局变量也不是main函数局部变量 所以未定义
	std::cout << A::a << std::endl;

	using namespace B;
	std::cout << a << std::endl;

	print();

	A::print();

	//using namespace A;  //只能使用一个命名空间
	print();

	return 0;	
}

register关键字

请求“编译器”将局部变量存储于寄存器中

C语言中无法取得register变量地址
C++中可以取得register变量的地址

在C++中不允许定义多个同名的全局变量
在C语言中重复定义多个全局变量是合法的
这些同名的全局变量最终都会被链接全局数据区的同一个地址空间上
标识符之间可能发生冲突

C++:struct

C语言的struct定义了一组变量的集合,C编译器并不认为这是一种新的类型
C++中的struct是一个新类型的定

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值