C++之命名空间,程序在翻译过程中的四个步骤,函数重载,缺省参数

 

今天,我们进入了C++的学习之旅。首先,我们来写一个简单的代码:

#include<iostream>
#include<windows.h>
using namespace std;
int main()
{
	cout<<"hello,C++"<<endl;
	system("pause");
	return 0;
}

下面我们展开来讲述一下上面每一步的含义:

<strong>如果我们不使用using namespace std;
std:标准库中所有得对象都在std中;
那么,我们就要在输出的时候这样输出:std::cout<<"hello,C++"<<std::endl;</strong>

 

下面我们重点来讲述一下命名空间:namespace

我们知道,在一个函数中不可以同时使用名称相同的变量:因为名称如果相同,在使用时就不知道访问存储的是哪一块空间。

所以C++中引入了namespace用来避免由于名称相同而带来的麻烦:下面我们通过一个例子来看看:

namespace P  //定义自己的命名空间
{
	int beg = 20;
}
int main()
{
	int
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C知道: 你好,对于您提出的问题,我可以回答。 在C++函数重载是指在同一作用域内,通过参数类型、顺序或个数的不同,定义多个名称相同但参数不同的函数函数重载增加了函数的多样性,提高了代码的复用性和可读性。 在下面的示例,我们使用参数值、函数重载函数模板实现排序Sort函数模板。 ```cpp #include <iostream> using namespace std; //函数重载,实现两数交换 template <typename T> void Swap(T& a, T& b) { T tmp = a; a = b; b = tmp; } //函数模板,实现冒泡排序 template <typename T> void Sort(T* arr, int len) { for(int i = 0; i < len; i++) { for(int j = len - 1; j > i; j--) { if(arr[j] < arr[j-1]) { Swap(arr[j], arr[j-1]); } } } } //排序Sort函数模板,带默认值参数 template <typename T, int len = 10> void Sort(T* arr) { Sort(arr, len); } int main() { int arr[] = {3, 9, 2, 8, 1}; //使用默认值参数,排序前10个元素 Sort(arr); for(int i = 0; i < 5; i++) { cout << arr[i] << " "; } cout << endl; float brr[] = {3.1, 9.2, 2.3, 8.4, 1.5}; //重载实现排序 Sort(brr, 5); for(int i = 0; i < 5; i++) { cout << brr[i] << " "; } cout << endl; return 0; } ``` 在上面的示例,我们定义了一个包含默认值参数的Sort函数模板,可以实现对数组前len个元素的排序。同时,我们还定义了函数重载的Swap函数模板,用于实现两个数交换。最后在main函数,我们实现了对两个不同类型的数组的排序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值