我是靠谱客的博主 飞快枫叶,最近开发中收集的这篇文章主要介绍SizeOf相关代码,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

#include <iostream>
#include <string>
#include <algorithm>
#include <vector>

using namespace std;

// 遍历输出
void PrintVec(const vector<int>& vec_)
{
    auto i_ = vec_.begin();
    while(i_ != vec_.end())
    {
        cout << * i_ << endl;
        ++i_;
    }
}

void TestSizeOf()
{
    char str[] = "Hello";
    char *p = str;
    int n = 10;

    // 求的是数组长度---
    cout << sizeof(str) << endl;

    // 求的是指针---- mac中指针占8个字节
    cout << sizeof(p) << endl;

    // 求的是int int类型占4个字节
    cout << sizeof(n) << endl;
}

// 空的类
class A
{
public:

};

class B
{
public:
    int m;
    int n;
};

class C
{
public:
    int m;
    char ch;
};

class D
{
public:
    //int m;
    char ch;
};

class E
{
public:
    int m;
    char ch;
    char *s;
};

// 虚函数 占用一个指针的大小 在mac中表现为8字节
class M
{
public:
    M(int x):a(x)
    {}

    virtual ~M();
private:
    int a;
};

// 测试类的字节对齐
void TestClassSizeOf()
{
    cout << sizeof(A) << endl;
    cout << sizeof(B) << endl;
    cout << sizeof(C) << endl;
    cout << sizeof(D) << endl;
    cout << sizeof(E) << endl;
    cout << sizeof(M) << endl;
}

// 测试Sort Int功能
void SortTest(vector<int>& vec_)
{
    sort(vec_.begin(),vec_.end());
    return;
}

int main() {
    vector<int> vec_ = {1,2,6,3,10,2,4,8};
    SortTest(vec_);
    //PrintVec(vec_);
    //std::cout << "Hello, World!" << std::endl;
    //TestSizeOf();
    TestClassSizeOf();
    return 0;
}

运行结果:
在这里插入图片描述

最后

以上就是飞快枫叶为你收集整理的SizeOf相关代码的全部内容,希望文章能够帮你解决SizeOf相关代码所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部