相关疑难解决方法(0)

C++标准的核心语言规范中的注释和示例是非规范性的吗?

通常在SO(以及其他地方),我已经看到C++标准中的注释和示例不是规范性的说法 - 我可能已经多次提出这个主张.

但是,我在C++标准的核心语言规范中找不到这个事实的证据(目前我在查看n3979 C++ 14工作草案).

我能找到的最接近的报价见第17.5.1.2/2段:

标有"注释:"或"示例:"的段落是提供信息的,其他段落是规范性的.

但是,除非我错误地认为该段只适用于图书馆部分(即第18至30条和附件D).

因此,问题是:C++标准中的所有注释和示例都是非规范性的吗?脚注怎么样?

c++ iso language-lawyer c++11 c++14

21
推荐指数
2
解决办法
606
查看次数

C++ 向量成员初始化

vec我对以下程序中有关in的输出感到困惑Test。为什么它是一个大小为 100 而不是 1 的向量?我以为std::vector<T> var{a}是一样的std::vector<T> var = {a}

#include <iostream>
#include <vector>

using namespace std;
struct Value {
   int a;
   int b;
};

class Test {
  public:
    std::vector<struct Value> vec{100};  
};

class Test2 {
  public:
    std::vector<int> vec{100};  
};

int main()
{
    Test test;
    std::cout << "test size: " << test.vec.size() << std::endl;
    Test2 test2;
    std::cout << "test2 size: " << test2.vec.size();
    
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出:

test size: 100
test2 size: 1
Run Code Online (Sandbox Code Playgroud)

c++

13
推荐指数
1
解决办法
1120
查看次数

标签 统计

c++ ×2

c++11 ×1

c++14 ×1

iso ×1

language-lawyer ×1