当前位置: 首页 > news >正文

阳江网站设计深圳网站设计专业乐云seo

阳江网站设计,深圳网站设计专业乐云seo,外贸业务怎么利用网站开发客户,东莞网络公司哪家最好文章目录 前言一、有关 const 区分二、有关命名空间三、有关输入和输出四、有关缺省参数四、函数重载总结 前言 本篇文章笔者将会对 C 这么语言中必须的基础部分进行简单讲解 , 同时也作为笔者自我复习使用, 这部分是初学C 的学者不可绕过的部分 , 希望学者认真理解 ,认真领会…

文章目录

  • 前言
  • 一、有关 const 区分
  • 二、有关命名空间
  • 三、有关输入和输出
  • 四、有关缺省参数
  • 四、函数重载
  • 总结


前言

本篇文章笔者将会对 C++ 这么语言中必须的基础部分进行简单讲解 , 同时也作为笔者自我复习使用, 这部分是初学C++ 的学者不可绕过的部分 , 希望学者认真理解 ,认真领会 .


一、有关 const 区分

C++ 中的 const 也同 C 语言中的用法类似 , const 在哪就修饰谁.

出现指针时的 const 修饰

在 C++ 中对于 const , 当出现指针时一定要特别注意 . 区分时可以这样区分 : 看 const 在 * 的前还是后

◎ const 在 * 前

const 在 *(表示指针) 前时 , const 修饰的就是指针变量指向的内容 , 意味着 : 指向的内容不能改变,但指针变量本是是可以改变的. ------- 此时就是 : 只可读 , 不可写 .

// const 修饰 
int main()
{//const 修饰指针变量指向的内容 , 即: 只可读 , 不可写const int* p = nullptr;int a = 1;p = &a; // ok - > 读// *p = 2; // err - > 写 errreturn 0;
}

◎ const 在 * 后

const 在 *(表示指针) 后时 , const 修饰的就是指针变量本身 , 意味着 : 指针变量本身不可以改变 , 但修饰的内容可以改变 . ------- 此时就是 : 只可写 , 不可读 .

// const 修饰 
int main()
{//const 修饰指针变量本身 , 即: 只可写 , 不可读int* const p = nullptr;int a = 1;//p = &a; // err - > 读  ----------  报错 : error C3892: “p”: 不能给常量赋值*p = 2; // ok - > 写return 0;
}

二、有关命名空间

对于命名空间 , 笔者给出这样一个理解 : 就是一个命名域 , 这个域把一些东西包裹 , 想要这些内容时必须通过域来找到这些内容.

命名空间的基本用法

命名空间必须定义在全局.

项目中有多个同名命名空间会自动合并.

两种形式

单独的命名空间

// 1. 单独的命名空间
namespace GJG
{int a = 1;int b = 2;int ADD(int a, int b){return a + b;}char c[] = "GJG 的命名空间";
}

命名空间的嵌套

//2. 命名空间的嵌套
namespace Compay
{// GJG的加法函数namespace GJG{int ADD(int a, int b){return a + b;}}//Other People 加法函数// 不同域中可以定义同名函数namespace OtherPeople{int ADD(int a, int b){return a + b;}}
}

命名空间的好处就是可以在外部使用时对同名函数等各自不受限制 , 不会受到冲突.

命名空间的三种使用方式

对命名空间全部展开 (一般不推荐 , 日常练习可用)


#include <iostream>
using namespace std; // 将 std 这个命名空间全部展开 , 这样下面 cout , cin 就不用指定域了 //输出 + - * / 的结果
int main()
{int a = 10;int b = 20;cout << "a + b :" << a + b << endl;cout << "a - b :" << a - b << endl;cout << "a * b :" << a * b << endl;cout << "a / b :" << a / b << endl;return 0;
}

展开常用

namespace GJG
{int a = 1;int b = 2;	
}//打印 10 次 a , 1 次 b
using GJG::a; // 展开 aint main()
{//打印10 次 a , 1 次 bcout << a << endl;cout << a << endl;cout << a << endl;cout << a << endl;cout << a << endl;cout << a << endl;cout << a << endl;cout << a << endl;cout << a << endl;cout << a << endl;cout << GJG::b << endl;return 0;}

指定域使用 ---- 项目常用

//指定
namespace GJG
{int a = 1;int b = 2;}//将 GJG 这个命名空间中的 a 改为 5 , 并打印int main()
{std::cout << "hello world !" << std::endl;  // 指定使用GJG::a = 5;std::cout << "a = " << GJG::a <<std::endl;return 0;}

三、有关输入和输出

在 C++ 中 输入用 — cin 对应 >> , 输出用 cout 对应 << .

C++ 中的输入输出与 C语言最大的区别就是其可以自动识别类型 , 更加方便使用.


//输入输出可以自动识别类型
int main()
{int a = 0;double b = 0.0;char c = '0';std::cin >> a;std::cin >> b;std::cin >> c;std::cout << "int : a = " << a <<std::endl<<"double : b = " << b <<std::endl << "char : c = " << c << std::endl;return 0;
}

四、有关缺省参数

概念 : 给一个默认值(缺省值) , 当参数给定了就用给定的默认值(缺省值) ,当参数没有给定时就用该默认值.

类型: 全缺省 和 半缺省.

规定: C++ 规定, 缺省参数必须从右到左依次缺省 , 实参部分必须从左到右依次传参不得跳跃缺省或传参.

// 1. 全缺省 
void Fun1(int a = 0, int b = 0 , int c = 0)
{cout << a << " " << b << " " << c << endl;
}// 2. 半缺省 
void Fun2(int a , int b = 0, int c = 0)
{cout << a << " " << b << " " << c << endl;
}int main()
{//全缺省cout << "全缺省 >: " << endl;Fun1();Fun1(1);Fun1(1,2);Fun1(1,2,3);//半缺省cout << "半缺省 >: " << endl;Fun2(1);Fun2(1,2);Fun2(1,2,3);return 0;
}

四、函数重载

重载: 提到重载 , 这里笔者重点讲解一下 , 什么是重载 ?

首先 , 重载是 C++ 中提出的具有很大作用的一种语法 , 同时也是为了补 C 语言的坑 , 因为 C 语言是不支持同一域中有不同的同名函数的 , 这样就会报错 , 同时也不支持在同一文件中有同名函数 , 这样就会面临一个问题 : 代码冗余 , 当我们写同一函数具有不同参数时就要写多个函数出来 , 这样是很不好的.

函数重载

构成函数重载的条件 : 函数的参数列表不同 .

这里特别注意一点 : 选择题中会常考 , 这一概念 , 注意函数重载是与函数的返回值是无关的 , 只与参数列表有关.

代码理解

#include <iostream>
using namespace std;//函数重载// 1. 
int ADD(int x , int y)
{return x + y;
}//  2.  参数与 1. 不同 ,  构成函数重载
double ADD(double x, double y)
{return x + y;
}//  3.  参数与 1. and 2. 不同 ,  构成函数重载
double ADD(double x, int y)
{return x + y;
}//这里特别注意参数列表的顺序也是其中一种情况 , 也是属于参数不同//  4. 顺序与上不同
double ADD(int x, double y)
{return x + y;
}int main()
{cout << "ADD(int x , int y) :     " << ADD(1, 2) << endl;;cout << "ADD(double x, double y) :" << ADD(1.2, 2.2) << endl;;cout << "ADD(double x, int y) :   " << ADD(1.2, 2) << endl;;cout << "ADD(int x, double y) :   " << ADD(1, 2.2) << endl;;return 0;
}

总结

以上是对入门基础部分的简单讲解 , 后序还有更重要的内容哦 ~

http://www.rdtb.cn/news/17045.html

相关文章:

  • wordpress 左右黑白高级seo课程
  • 做招聘网站都需要什么手续江东怎样优化seo
  • wordpress 自动保存图片sem优化
  • 企业网站设计谁家做了的好国际新闻
  • 常州网站建设团队怎么做一个网站平台
  • 苏州专业做网站较好的公司网站优化 推广
  • 淘宝店铺怎么上传自己做的网站360网站关键词排名优化
  • 优购物官方网站订单查询seocui cn
  • 做网站送的企业邮箱能用吗个人代运营一般怎么收费
  • 网站营销软件代写
  • 做加工都在哪个网站推广谷歌首页
  • 上海找做网站公司百度seo怎么把关键词优化上去
  • 做网站怎么插音乐营销策略主要包括哪些
  • sql做网站后台网络舆情管理
  • 企业网站建设免费百度人工服务24小时电话
  • 设计电子商务网站建设方案网站seo站外优化
  • 怎么创建图片网站排名优化软件点击
  • c语言除了做网站还能干什么爱网站
  • 网站建设管理 优帮云数字经济发展情况报告
  • 做网站数据库网络营销的用户创造价值
  • wordpress转bitcron网站seo排名优化工具
  • 帮助做ppt的网站网络运营
  • 建筑公司网站常用长尾词dw网页制作教程
  • 西安免费做网站价格广州seo公司推荐
  • 免费做图网站有哪些百度收录检测
  • 网站怎么做支付宝付款做网站推广公司
  • 沈阳app制作网站建设推百度网站大全
  • 深圳门户网站建设矿产网站建设价格
  • 关于做美食的小视频网站360优化大师app
  • 如何外贸seo网站建设免费网站seo优化