zoukankan      html  css  js  c++  java
  • 学习第40天

    C++语言

    1. 函数与后置返回类型、

      1. 函数可以没有形参 但实参的值必须有 类型不能省略、

      2. 前置返回类型、将函数返回类型放在函数名称前

      3. void b(int, int);//函数声明是可以只有类型 没有函数形参名
        void a(int b, int)//只给类型、没有形参变量名、
        {
        	return;
        
        }
        
        int main()
        {
        	a(10, 39);
        
        }
        
      4. C++11出现了后置返回类型、函数返回类型写在参数列表之后、

        1. auto b(int, int)->void;//函数声明后置返回类型
          auto a(int b, int)->void//auto 自动类型推断、函数定义后置返回类型、
          {
          	return;
          
          }
          
          int main()
          {
          	a(10, 39);
          
          }
          
        2. 前面放置auto便是函数的返回类型放在参数列表之后、而参数列表之后的返回类型通过->开始、

    2. 内联函数、

      1. 普通函数定义前加inline、便是内联函数、

        1. inline int a(int b)//内联函数
          {
          	return 1;
          
          }
          
        2. 调用函数消耗系统资源、内联解决了函数体小、而且频繁调用的函数

        3. inline影响编译阶段、在编译期尝试将调用该函数的动作替换成函数本体、目的是提升性能

        4. 函数动作替换为函数本体会带来代码膨胀问题、

        5. inline取决于编译器、

    3. 函数杂合用法、

      1. void 表示函数不返回任何类型 但是可以调用一个返回类型为void的函数、作为另一个返回类型void的函数返回值、

        1. void a()
          {
          
          }
          void b()
          {
          	
          	return a();
          	return;
          }
          
          1. 函数返回指针和返回引用、

            1. 这样使用有安全问题、这样是往其它地址写入内容、

            2. int* a()
              {
              int b = 3;
              return &b;//函数执行后、此段内容便会被系统回收、
              }
              
          	3. 返回引用、
          
          	1. ```c
              int &a()
              {
              	int a = 3;
              	cout << &a << endl;
              	return a;
              }
              int main()
              {
              	int& b = a();
              	cout << &b << endl;//同样也是有安全问题、使用整型来解决安全问题
                  int b = a();
              	cout << &b << endl;//使用整型来解决安全问题、这样的话就不是同样的一个地址、不用担心内存问题、
              }
          

          1. 没有形参可以保持形参列表为空

          2. 函数不调用的话可以只有声明部分、没有定义部分、

          3. 函数定义一般只能定义一次、但可以多次声明、函数定义一般放在.cpp文件中,函数声明文件一般放在.h里面、

          4. 引用做形参、

            1. struct a
              {
              int b;
              };//定义结构体
              void c(a& d)
              {
              d.b = 50;
              }
              int main()
              {
              a e;
              e.b = 190;
              c(e);
              cout << e.b << endl;
              }
              
          	2. 不存在只拷贝问题、只是传递地址、
          
          7. 防止形参和实参的只拷贝、所以尽量使用引用类型的形参取代指针类型的形参、
          
    4. const char、char const、char const三者的区别、

      1. 把形参写成const的好处、可以防止无意中修改了形参的值导致实参被改变、
        2. 实参类型更灵活、
        3.
    5. 函数形参中带const


  • 相关阅读:
    与众不同 windows phone (50)
    与众不同 windows phone (49)
    重新想象 Windows 8.1 Store Apps (93)
    重新想象 Windows 8.1 Store Apps 系列文章索引
    重新想象 Windows 8.1 Store Apps (92)
    重新想象 Windows 8.1 Store Apps (91)
    重新想象 Windows 8.1 Store Apps (90)
    重新想象 Windows 8.1 Store Apps (89)
    重新想象 Windows 8.1 Store Apps (88)
    重新想象 Windows 8.1 Store Apps (87)
  • 原文地址:https://www.cnblogs.com/chengyaohui/p/13748371.html
Copyright © 2011-2022 走看看