2015-09-26 60 views
-1

只是一個問題:如何爲C++基元類型定義一個新操作?C++中雙操作的新操作

我已經定義了一個新的類(A)和我已經超載,結果操作*

所以:

A test(); 
test * 2; //works 
2 * test; //doesn't work 
+0

可能是因爲'測試()'聲明的函數,而不是一個' A'。 –

回答

1
struct A { 
    // ... 

    friend A operator * (A const& lhs, double rhs); 
    friend A operator * (double lhs, A const& rhs); 
};