Inline constructors and One Definition Rule

前端 未结 2 413
盖世英雄少女心
盖世英雄少女心 2020-12-19 21:28

Consider following source files 1.cpp

#include 

using namespace std;

struct X
{
    X()
    {
        cout << \"1\" << endl;
           


        
2条回答
  •  别那么骄傲
    2020-12-19 22:20

    It is undefined behaviour (with no required diagnostic) if inlined functions (such as your class constructor) have different definitions in different translation units.

提交回复
热议问题