[英]Best way to make both a compile-time and runtime version of a function
我有一個 function 將由編譯時和運行時函數( gtest
和 python ctypes
)調用。 我需要一個模板版本和一個模板變量作為 function 參數的版本。 例如
template<int A, int B, int C>
void function_compiletime(int a, int b, int c) {
// code section 1
}
void function_runtime(int a, int b, int c, int A, int B, int C) {
// code section 2
}
其中// code section 1
與// code section 2
相同。 我很小心,我可能會不小心更改// code section 1
中的內容,而不是// code section 2
中的內容。 如何強制要求函數的主體應該相同?
制作 function 的編譯時和運行時版本的最佳方法
如何強制要求函數的主體應該相同?
通過定義單個 constexpr function:
constexpr void
function_runtime(int a, int b, int c, int A, int B, int C)
{
// code section
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.