zoukankan      html  css  js  c++  java
  • C++程序设计随笔(一)

    做了两年的android应用了,现在想转cocos2d-x做游戏。那就从语言开始学吧,当然同时也要做些小东西,来具体学习,看了两章才有这个想法,发现这本书,不是主要讲C++怎么用,而是告诉c++语言怎么设计的。那么厚的书啊,不知道能不能坚持,写这个博客就是来激励自己,也做个笔记。

    复数:

    标准库支持一族复数的类型,就是complex类的方式。也可以单精度的float和双精度的double的复数。

    complex的一个模板:

    template<class scalar>class complex{

    public:

    complex (scalar re,scalar im);

    //....

    }

    复数运用如:

    template<class C> complex<C> pow(const complex<C>&,int);

    void f(complex<float> fl,complex<double>db){

     complex<long double> ld = fl + sqrt(db);//开方函数

    db +=fl * 3;

    fl = pow(1/fl,2);//计算x的y次幂

    //...

    }

    向量运算:()

    vector是保存值的一种机制,valarray适用数值计算。

    valarray的模板::

    template<.class T>class valarray{

    //..

    T& operator[] (size_t);//size_t为无符号的整形类型

    //..

    }

    运用:

    void f(valarray<double> &a1,valarray<double>& a2){

    valarray<double> a = a1 * 3.14 + a2/a1;

    a2  += a1*3.14;

    a = abs(a);//计算绝对值

    double b = a2[7];

    //...

    }

    C++;类型和说明

    将布尔值、字符、整数类型放到一起称为整型。

    整型和浮点类型一起称为算术类型。

    枚举和类一起称为用户定义类型。

    int(char)可以转换字符为整型,一个字符是一个字节,但是8个二进制保存的是整数值0~255或者是-128~127,这就关于到char的选择。

    C++提供了signed char 有符号(-128~127) unsigned char无符号(0~255),但是最常用的字符都在127之内。

    枚举:

    枚举范围,比如

    enum e1(dark,light)//范围(0:1)
    enum e2(a = 3,a = 9)//范围(0:15)
    enum e3(min = -10,max 1000000)//范围(-1048576,1048575)

    范围计算:

    如果枚举都是负数,范围是[0:2的k次幂 - 1],2的k次幂 表示能使所有枚举符位于此范围内的最小的2的幂。

    一个枚举的sizeof就是能容纳其范围的整数的sizeof。

    作用域:

    被隐蔽的全局名字可以通过作用域解析运算符::去引用 例如:

     

    int x;
    void f(){
        int x = 1;//遮蔽全局的x
        ::x = 2;//给全局的x赋值
                        
    }  
    

    typedef 为前缀,它就是为类型声明一个新的名字,而不是声明一个指定类型的对象。例如:

    typedef char* Pchar;//声明char类型的一个新名称为Pchar
    Pchar p1,p2;//
    char *p3 = p1;
    

     看书进度太慢了。。。决定每隔几天发一次笔记吧。。

    不然自己都受不了了。。。。

  • 相关阅读:
    git创建分支与合并分支
    web实现点击左侧导航,右侧加载不同的网页(这种布局多用于后台管理系统)
    小程序通过用户授权获取手机号之getPhoneNumber
    git 本地仓库与远程仓库建立连接
    multipartUpload上传图片到阿里云
    5月23日——SPA单页面应用的原理
    5月23日——谈谈对BFC规范的理解
    5月11日——IOS下如何检测用户是否安装微信
    5月10日——华为内置虚拟键问题
    移动端WEB开发,click,touch,tap事件浅析
  • 原文地址:https://www.cnblogs.com/a-bird/p/3595438.html
Copyright © 2011-2022 走看看