VC.NET 需要注意的一些问题

 String^ abc = gcnew String();
 String^ abc = nullptr

override .net 类方法:

void  Reset() override
{....}

属性:

property virtual int Count
{
    int get(){return this->m_Count;}
    set(int value){this->m_Count=value;}
}

索引:

virtual property int default[int]
{
    int get(int index){return this->m_Index;}
    void set(int index, int value){this->m_Index=value;}
}

就是c#中的:

public int this[int index]
{
    get{return this.m_Index;}
    set{this.m_Index=value;}
}

数组:

array<ItemType>^ items;
cli::array<ItemType^>^ items;

泛型:

generic <class ItemType>
public ref class ItemCollection{}

类型:
c#:

typeof(someclass);

C++:

someclass::typeid;

namespace 这点很烦人

namespace A
{
    namespace B
    {
    }
}

同名不同返回類型的函數(繼承接口)

virtual someTypename^ somemethodname() = basetypename::somemethod
{
     return this->m_InnerList->GetEnumerator();
}

定义类,结构

public ref class Block {};         // reference class
public value class Vector {};      // value class
public interface class IFooBar {}; // interface class


public ref class Shape abstract {};
public ref class Shape2D abstract : public Shape{};

sealed class

public ref class String sealed {};

http://msdn.microsoft.com/zh-cn/library/ms235220.aspx

折叠代码

#pragma region sometext
#pragma endregion sometext

定义.net中的enum:

public enum class eRtsState
    :int
{
    LoginFailed = -2,
    ConnectFailed = -1,
    Closed = 0,
    Init = 1,
    Connecting = 2,
    Connected,
    Logining,
    Logined,
    LoadingExchange,
    LoadingContracts,
    Opened,
};

定义Property:

public:
    property eRtsState State
    {
        eRtsState get()
        {
            return (eRtsState)(int)_mdapi->State();
        }
    }

也可以直接使用

property eRtsState State;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值