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

以遇见为主题做网站河北邢台人品怎么样

以遇见为主题做网站,河北邢台人品怎么样,外贸网站建设制作,北京网站建设公司有哪些目录 二、应用场景 1. 函数参数的默认值 代码示例 2. 构造函数的默认参数 代码示例 3. 变量的默认初始化 代码示例 四、默认值的优势 五、注意事项 一、核心概念 默认值 是为函数参数或变量预先设定的默认值。当调用者未显式提供数据时,程序自动使用该默认…

目录

二、应用场景

1. 函数参数的默认值

代码示例

2. 构造函数的默认参数

代码示例

3. 变量的默认初始化

代码示例

四、默认值的优势

五、注意事项


一、核心概念

        默认值 是为函数参数或变量预先设定的默认值。当调用者未显式提供数据时,程序自动使用该默认值,确保程序的确定性健壮性

        必须在函数声明中声明默认参数!

        函数声明就是函数的身份证,外部调用方不看定义只看声明。

int test(int n,int m = 1);

二、应用场景

1. 函数参数的默认值

        在函数声明中为参数指定默认值,调用时可选择性省略参数。

代码示例
#include <iostream>// 参数 b 和 prefix 有默认值
void printMessage(const std::string& message, bool addNewline = true,         // 默认换行const std::string& prefix = "") // 默认无前缀
{std::cout << prefix << message;if (addNewline) std::cout << "\n";
}int main() {printMessage("Hello");                // 输出: Hello(换行)printMessage("World", false);         // 输出: World(不换行)printMessage("C++", true, ">> ");     // 输出: >> C++(换行)return 0;
}

关键规则

  • 默认参数必须从右到左连续设置,不能左侧有默认值而右侧没有。

  • 默认值通常在函数声明中指定(头文件),而非函数定义。

  • 没传实参 ->用默认值;传了实参 ->用传进来的。

int test(int n,int m = 1);int test(int n, int m){int ans = 1;for(int i = 0;i < m; i++){ans *= n;}return ans;
}int main(){cout<< power(5);//没传实参 ->用默认值,m=1cout <<power(4,3);//传了实参 ->用传进来的,m=3
}

2. 构造函数的默认参数

        为类的构造函数参数设置默认值,允许灵活初始化对象。

代码示例
#include <iostream>class Rectangle {
public:// 构造函数:width 和 height 有默认值Rectangle(int w = 10, int h = 5) : width(w), height(h) {}void printArea() {std::cout << "Area: " << width * height << "\n";}private:int width, height;
};int main() {Rectangle rect1;        // 使用默认值 width=10, height=5rect1.printArea();      // 输出: Area: 50Rectangle rect2(20);    // width=20, height=5(默认)rect2.printArea();      // 输出: Area: 100Rectangle rect3(15, 3); // width=15, height=3rect3.printArea();      // 输出: Area: 45return 0;
}

3. 变量的默认初始化

        在变量声明时直接赋予默认值(C++11 起支持类成员直接初始化)。

代码示例
class Config {
public:int maxConnections = 100;   // 类成员默认值std::string logPath = "/var/log/app.log";
};int main() {Config config;std::cout << config.maxConnections;  // 输出 100return 0;
}

四、默认值的优势

优点说明
简化调用调用者无需传递所有参数,降低使用复杂度。
代码灵活性兼容新旧代码(新增参数可为旧代码提供默认值)。
防止未定义行为避免因参数缺失导致程序行为不确定(如未初始化的变量)。

五、注意事项

  1. 默认参数顺序
    默认值必须放在右边,必须从右到左连续设置,以下为错误示例:

    void func(int a = 1, int b); // 错误!左侧有默认值,右侧未设置
  2. 避免头文件与实现文件冲突
    默认值应在函数声明(头文件)中指定,而非实现文件:

    // 头文件(正确)
    void logError(const std::string& msg, int severity = 1);// 实现文件(错误!重复指定默认值)
    void logError(const std::string& msg, int severity = 1) { /*...*/ }
  3. 谨慎使用默认值
    过度使用可能导致代码可读性下降(需明确何时覆盖默认值)。

http://www.dtcms.com/wzjs/570920.html

相关文章:

  • 北京大兴区网站建设网站 网络架构
  • 瑞金建设局网站中国建设工程造价管理协会
  • 百度知道山东网站建设二级域名查询网站
  • 网站设计英语惠州企业网站seo
  • 基因数据库网站开发价格重庆网站建设机构
  • 重庆网站建设 熊掌号外贸做编织袋常用网站
  • 广州部队网站建设费用重庆妇科医院排名
  • 做企业网站需要买什么wordpress能导入多少产品
  • 宁波正规网站建设方式高端网站报价
  • 做外贸的网站简称为什么网站建设银行网站怎么下载
  • 宁晋网站建设多少钱网页设计属于平面设计吗
  • 俄罗斯网站后缀职业培训网络平台
  • wordpress 4.7seo专业培训机构
  • 山东省建设银行网站建筑施工特种证书查询
  • 十大网站排行榜企业的品牌宣传策划
  • 厚街网站建设公司电脑哪里做模板下载网站
  • 专业做淘宝网站绍兴网站建设资料 优帮云
  • 做民宿的网站环球资源网入驻费用
  • 淄博网赢网站建设保障性住房建设投资中心网站
  • 购物型网站模板当涂住房和城乡建设网站
  • 开个小网站要怎么做电子工程师证怎么考
  • 焦作建设银行网站优秀网页设计代码
  • 小说在线阅读网站怎么做成都市公共资源交易服务中心
  • 邢台推广网站建设电话wordpress老版编辑
  • 做网站需要团队还是一个人烂网站做竞价行吗
  • 金华自助建站创意网名大全
  • angular适合 做 网站吗分销网站建站
  • 广州 电商设计网站建设wordpress微博图床怎么用
  • c 做网站郑州电力高等专科学校招生办电话
  • 网站制作优化推广南京网站优化步骤