相关疑难解决方法(0)

什么是聚合和POD以及它们如何/为何特殊?

常见问题解答涉及聚合和POD,并涵盖以下材料:

  • 什么是聚合
  • 什么是POD(普通旧数据)?
  • 它们有什么关系?
  • 它们如何以及为何特别?
  • C++ 11有什么变化?

c++ aggregate standard-layout c++11 c++17

525
推荐指数
6
解决办法
13万
查看次数

带有数据类型的结构名称后面的冒号

在阅读一些 boost 库源代码时我遇到了这部分

template< class Value = double >
struct rk4_coefficients_a3 : boost::array< Value , 3 >
{
    rk4_coefficients_a3( void )
        {
    (*this)[0] = static_cast<Value>(0);
    (*this)[1] = static_cast<Value>(0);
    (*this)[2] = static_cast<Value>(1);
        }
};
Run Code Online (Sandbox Code Playgroud)

结构体名称后面的冒号 (:) 是什么意思?

c++11

5
推荐指数
1
解决办法
2126
查看次数

C++中的struct继承与类继承

我刚刚从这个Q/A中发现结构在C++中是可继承的,但它是一个好的实践,还是更适合使用类?哪种情况更可取,哪种情况不适合?

我从来没有需要这个,但现在我有一堆不同类型但经度相同的消息.我在char数组中使用二进制文件,我只是将它们与memcpy一起复制到结构中以填充其字段(我不知道是否甚至可以使用std :: copy).

我想能够使用公共头继承基础结构中的每个结构都很棒,这就是我搜索它的原因.所以第二个问题是:如果我用类做这个,是否可以从缓冲区到类中执行memcpy(或std:copy)?

c++ inheritance struct memcpy

4
推荐指数
1
解决办法
5568
查看次数

结构和类之间的差异?

结构是否支持继承?我认为这是一个愚蠢的问题,但我对此并不太了解.

编写这样的代码是什么意思:

struct A {
   void f() { cout << "Class A" << endl; }
};

struct B: A {
   void f() { cout << "Class B" << endl; }
};
Run Code Online (Sandbox Code Playgroud)

在结构中也会出现私有部分,它们不会给出封装吗?结构和类之间的主要区别是什么?

c++ string class

0
推荐指数
2
解决办法
4297
查看次数

标签 统计

c++ ×3

c++11 ×2

aggregate ×1

c++17 ×1

class ×1

inheritance ×1

memcpy ×1

standard-layout ×1

string ×1

struct ×1