Abraxas/Meyers: Effective C++  Home  Table of Contents

Module - m18.html

ABRAXAS SOFTWARE - CodeCheck Meyers: Effective C++ Test-Suite

Meyers: Effective C++ Test Suite for Module - m18.cpp

// Item 18: Make interfaces easy to use correctly and hard to use incorrectly. 78

struct M {
	explicit M(int m) : val(m){}
	int val;



Function Name: M()

};
struct D {
	explicit D(int d) : val(d){}
	int val;



Function Name: D()

};
struct Y {
	explicit Y(int y) : val(y){}
	int val;



Function Name: Y()

};
class Date {
public:
	Date( const M& m, const D& d, const Y& y );
};

// bad

struct M {
	explicit M(int m) {}
	int val;



Function Name: M()

};
struct D {
	explicit D(int d) {}
	int val;



Function Name: D()

};
struct Y {
	explicit Y(int y) {}
	int val;



Function Name: Y()

};
class Date {
public:
	Date( const M& m, const D& d, const Y& y );
};

Abraxas/Meyers: Effective C++  Home  Table of Contents

ABRAXAS SOFTWARE - CodeCheck Meyers: Effective C++ Test-Suite