簡體   English   中英

C ++模板化為特定類型,而無需使用傳統的模板專業化

[英]c++ templating to specific type without using traditional Template Specialization

template <typename T_>
class my_class {
public:
       typedef T_   value_type;
       typedef T_ * pointer;

我正在開發一個模板化類,但是由於C ++錯誤檢測和智能化吸引了模板化的東西,有沒有一種方法可以將模板設置為example int以獲得智能化的好處,然后在完成開發后切換它回來並修復幾個錯誤?

我仍然希望我的代碼是通用的,並重新編寫它,因為Template Specialization太多了。

我希望能夠做類似的事情

template <typename T_ = int>
class my_class {
public:
       typedef T_   value_type;
       typedef T_ * pointer;

我不能完全確定我了解您要完成的工作,但是您可以通過預處理器或注釋掉typedef T_int並禁用模板語句。

#ifndef NO_MY_CLASS_TEMPLATE
template <typename T_ = int>
#endif
class my_class {
#ifdef NO_MY_CLASS_TEMPLATE
       typedef int T_;
#endif
public:
       typedef T_   value_type;
       typedef T_ * pointer;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM