淘宝界面总结

来源:互联网 发布:万影数据 编辑:程序博客网 时间:2024/06/06 01:57
//以下有说的不对的请大家指出,谢谢。
1、指针要实例化(new),但是要注意抽象类不可以实例化
class CFileOperation
{
public:
    FILE* m_bUFp;
    FILE* m_sUFp;

    CFileOperation();
    ~CFileOperation();
};

class CProgress
{
public:
    CFileOperation* m_file = new CFileOperation();
    CProgress();
    ~CProgress();
};
//一定要实例化,因为不实例化没有指向的空间,会使得FILE* m_bUFp;运行时无效
//new了之后的指针要记得在程序结束之后delete掉,以防占内存

2、用变量当作文件的名字
    memset(m_fileName, '0', sizeof(m_fileName));
    strcpy(m_fileName, "file\\BoughtGoods\\");
    strcat(m_fileName, m_userName);
    strcat(m_fileName, ".txt");
3、从文件向数组写东西的时候字符串不需要有地址符   &
            m_infor = (char*)malloc(sizeof(char*)* 20);
            fscanf(m_bUFp, "%s", m_infor);
       对二维数组来说:
        m_goods = (char**)malloc(sizeof(char*)* 100);
        while (!feof(m_bUFp))
        {
            m_goods[m_length] = (char*)malloc(sizeof(char)* 100);
            fscanf(m_bUFp, "%d%s%d", &m_goodsID[m_length], m_goods[m_length], &m_price[m_length]);
            if (feof(m_bUFp))
            {
                break;
            }
            m_length++;
        }
//feof(FILE* fp),函数是判断文件是否读到结尾
4、传参数的时候整数数组不需要取地址符,但是单一变量、字符数组、指针是需要的,这样在函数里边改变值之后才可以传出来
5、删除文件函数:remove(char* FileName);
6、文件读取函数freopen ,和 fscanf。
    freopen("e:\\data.txt", "r", stdin);
    while (scanf("%s%s%f", tid, tt, &ttf) != EOF)/////
    {
        if (strcmp(tid, id) == 0)   same_flag = 1;
    }
    fclose(stdin);
//但是这样读取的数据是存在缓存区里边的,,如果这样读,如果下一句是scanf,这句scanf是不会运行的,因为,scanf是从缓存区里边读取数据,缓存区里边有数据是不需要输入的,所以直接跳过了
7、几点想法
1)、在写之前把要写哪些类想好,想好类之间的关系,里边的属性,行为。我就是因为这个一开始没有想好,写了两次
2)、写的时候先把一个类里边要写的东西写出来,具体内容不写也可以,就先把所有的函数都写出来。自己感觉这个对自己比较适用
3)、写的时候最好写完一个函数就执行一次程序,不然最后查错都不好找。
4)、最后!!最好每一次写的时候都把程序进程记录一下,每一次写到了哪里,记录下来,下一次开始的时候直接从这里开始就可以了,不至于思维混乱。
0 0
原创粉丝点击