<span id="Label3"><p><span style="color:rgb(255,0,0);text-decoration:underline;font-size:20px;"><strong>sizeof(..);函数</strong></span></p><p>int类型输出结果为4;double类型结果为8;float类型为4;</p><p>int *i=NULL;这里变量i中的存放的值为00000000,是一个地址;也就是NULL是一个地址为00000000的指针;但是*i中是没有初始化的;直接输出是出错的;</p><p><span style="color:rgb(255,0,0);text-decoration:underline;font-size:20px;"><strong>参数传递:</strong></span></p><p><span style="color:rgb(255,0,0);text-decoration:underline;font-size:20px;"></span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);">#include<iostream></span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);">using namespace std;</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);">//值传递</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> void change1(int n){</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> cout<<"值传递--函数操作地址"<<&n<<endl; //显示的是拷贝的地址而不是源地址 </span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> n++;</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);">}</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);">//引用传递<br /></span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);">void change2(int & n){</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> cout<<"引用传递--函数操作地址"<<&n<<endl; </span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> n++;</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);">}</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> //指针传递</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);">void change3(int *n){</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> cout<<"指针传递--函数操作地址 "<<n<<endl; </span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> *n=*n+1;</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> } </span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);">int main(){</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> int n=10;</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> cout<<"实参的地址"<<&n<<endl;</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> change1(n);</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> cout<<"after change1() n="<<n<<endl;</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> change2(n);</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> cout<<"after change2() n="<<n<<endl;</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> change3(&n);</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> cout<<"after change3() n="<<n<<endl;</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);"> return true;</span></p><p style="text-align:center;"><span style="font-size:14px;color:rgb(54,96,146);">}</span></p><p style="text-align:left;"><span style="color:rgb(247,150,70);"><strong>结果分析:</strong></span><br /></p><p>int n=10;</p><p>实参的地址0019FF3C</p><p>值传递--函数操作地址0019FEEC</p><p>after change1() n=10</p><p>引用传递--函数操作地址0019FF3C</p><p>after change2() n=11</p><p>指针传递--函数操作地址 0019FF3C</p><p>after change3() n=12</p><p>其中实参传递时,重新分配了一个地址主函数中的变量和调用函数中的变量不是一个地址当调用函数中改变了主函数中的值不会改变;而引用传递和指针传递是在同一个地址上进行的操作。</p><p>数组作为参数传递时与指针类似是将数组首地址传给函数的,但是在调用函数中修改值会改变主函数中的值。</p><p><strong style="color:rgb(255,0,0);font-size:20px;white-space:normal;">数据结构:</strong></p><p><span style="font-size:14px;color:rgb(54,96,146);">struct type_name </span><span style="color:rgb(54,96,146);font-size:14px;">{</span></p><p><span style="color:rgb(54,96,146);font-size:14px;">member_type1</span><span style="color:rgb(54,96,146);font-size:14px;"> </span><span style="color:rgb(54,96,146);font-size:14px;">member_name1</span><span style="color:rgb(54,96,146);font-size:14px;">;</span></p><p><span style="color:rgb(54,96,146);font-size:14px;">member_type2</span><span style="color:rgb(54,96,146);font-size:14px;"> </span><span style="color:rgb(54,96,146);font-size:14px;">member_name2</span><span style="color:rgb(54,96,146);font-size:14px;">;</span></p><p><span style="color:rgb(54,96,146);font-size:14px;">member_type3</span><span style="color:rgb(54,96,146);font-size:14px;"> </span><span style="color:rgb(54,96,146);font-size:14px;">member_name3</span><span style="color:rgb(54,96,146);font-size:14px;">;</span></p><p><span style="color:rgb(54,96,146);font-size:14px;"> .
讯享网
.} object_names;
type_name 是结构体类型的名称
类:
访问修饰符:
public : 在类的外面可以访问成员

protected : 在类的外面不可以访问类的成员,但是在该类的派生类上是可以访问的。
本文出自 “” 博客,请务必保留此出处http://.blog.51cto.com//
C++笔记

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/172426.html