Софтуерно Инженерство
Loading...
M.Yankov avatar M.Yankov 52 Точки

Namespaces в C++

Има ли значение как точно се използват namespace-ите в c++ ? Или по-точно кое от трите вида имплементация на header е най-добре?
Забелязах че и по трите начина работи.
Имам следният примерен .h файл:

#pragma once

namespace MyFramework
{
	class MyClass
	{
	private:
		int value;
	public:
		MyClass(int someValue);
	};
}

И според вас кое е по-правилно за имплементация в .cpp файла?

using namespace MyFramework;

MyClass::MyClass(int someValue) : value(someValue)
{
}
namespace MyFramework 
{
    MyClass::MyClass(int someValue) : value(someValue)
    {
    }
}
MyFramework::MyClass::MyClass(int someValue) : value(someValue)
{
}

 

0
C++ Programming
zombai4e avatar zombai4e 9 Точки

Предпочитам втория вариант, когато имплементирам съдържанието на функциите на класа.
Първият вариант също е добър. Третият не е за предпочитане според мен. Кодът става по-трудно четим.

1