Использование директивы для указания псевдонима класса в C ++ / CLI - PullRequest
15 голосов
/ 01 декабря 2010

В C # есть три типа директив использования:

using System; // Specify Namespace
using Diag = System.Diagnostics; // Specify Namespace Alias
using DBG = System.Diagnostics.Debug;  // Specify Class Alias

В C ++ / CLI я знаю эквиваленты первых двух:

using namespace System;
namespace Diag = System::Diagnostics;

Есть ли способ сделать третий в C ++ / CLI?

делает namespace DBG = System::Diagnostics::Debug; дает error C2879: 'System::Diagnostics::Debug' : only an existing namespace can be given an alternative name by a namespace alias definition

Единственный альтернативный вариант, который я придумал, это #define DBG System::Diagnostics::Debug, но я бы предпочел правильную директиву using, если она доступна.

1 Ответ

19 голосов
/ 01 декабря 2010

Определение типа C ++ поможет вам.

typedef System::Diagnostics::Debug DBG;
...