关于C++中的花括号

      作为一个C++的小菜鸟,有些问题真的是非常多。今天写代码才发现原来那么多简单的东西自己竟然忽视了。在一个循环语句中,花括号的位置原来是那么地重要,以前被忽略地一些细节原来会给自己带来很大麻烦,虽然现在还不是很清楚花括号的位置该放在什么地方。也不知道为什么要这样做。不过通过实践我也获得了一些宝贵的经验。在去看看书吧,也许书中会有答案。

转载于:https://my.oschina.net/u/3045084/blog/789983

c结构体的括号赋值是一种可以在创建结构体实例时直接同时给结构体的属性赋值的方式。通过在构造函数定义结构体的属性并在创建结构体实例时传入相应的值,可以在一条语句完成赋值操作。例如,在构造函数与结构体名称相同的情况下,可以使用括号赋值方式来创建结构体实例并同时赋值属性,如下所示: ```c++ #include <iostream> using namespace std; struct man { int height; int weight; man(int h, int w) { height = h; weight = w; } }; int main() { man jack(175, 120); cout << jack.height << "," << jack.weight; return 0; } ``` 当构造函数与结构体名称不同时,也可以使用括号赋值方式来创建结构体实例并单独修改属性的值。可以在构造函数之后通过调用结构体的方法来修改结构体实例的属性,或者直接通过结构体实例的点操作符来修改属性的值,如下所示: ```c++ #include <iostream> using namespace std; struct man { int height; int weight; void change(int h, int w) { height = h; weight = w; } }; int main() { man jack; cout << jack.height << "," << jack.weight << endl; jack.change(170, 110); cout << jack.height << "," << jack.weight << endl; jack.height = 175; jack.weight = 120; cout << jack.height << "," << jack.weight << endl; return 0; } ``` 另外,你还可以使用单独赋值的方式来给结构体的属性赋值。在创建结构体实例后,可以通过结构体实例的点操作符来单独赋值属性的值,如下所示: ```c++ #include <iostream> using namespace std; struct man { int height; int weight; }; int main() { man jack; jack.height = 175; jack.weight = 120; cout << jack.height << "," << jack.weight; return 0;} ``` 因此,c结构体的括号赋值提供了一种方便同时赋值结构体属性的方式,可以根据需要选择使用。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [c++结构体属性单独赋值与括号赋值的区别](https://blog.csdn.net/qq_62761504/article/details/129778803)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值