我已經基本實現了一個提案,我的問題是,它已經完成了,如果是的話,在哪裏?和/或有更好的方式來做我在做什麼?對於這篇文章的長度感到抱歉,我不知道有更好的方式來解釋我的方法,而不是提供代碼。 我以前問的問題pimpl: Avoiding pointer to pointer with pimpl? 要在這裏再次解釋這個問題,基本上,可以說,我們已經有了一個接口interface和實施impl。此外,像
我正在嘗試使用pimpl模式並在匿名命名空間中定義實現類。這在C++中可能嗎?我的失敗嘗試如下所述。 有沒有可能解決這個問題,而無需將實現移動到名稱空間(或全局名稱空間)? class MyCalculatorImplementation;
class MyCalculator
{
public:
MyCalculator();
int CalculateStuff(i
我寫一個C++頭在我定義了一個 class A {
// ...
};
,我想從外面的世界隱藏的(因爲它可能會改變,甚至在此標題的未來版本中將被刪除)。 還有一個B類在具有類A的一個對象作爲成員相同的標題: class B {
public:
// ...
private:
A a_;
};
什麼是從外界隱藏類A的一個適當的方式? 如果我把A的定
在this question我失敗問到如何使用不同的PIMPL實現依賴於一個模板參數實現。 也許這個例子ilustrates好什麼,我試圖做的: #include <iostream>
template< int N, typename T >
struct B
{
B() : c(new C<N>)
{}
template< int M >
st