4

我在这个链接上遇到了这个 c#

看不懂这条线...

public StockTickerHub() : this(StockTicker.Instance) { }

它看起来有点像从基类继承,但我以前从未见过this这样使用过。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.AspNet.SignalR;
using Microsoft.AspNet.SignalR.Hubs;

namespace SignalR.StockTicker
{
    [HubName("stockTickerMini")]
    public class StockTickerHub : Hub
    {
        private readonly StockTicker _stockTicker;

        public StockTickerHub() : this(StockTicker.Instance) { }

        public StockTickerHub(StockTicker stockTicker)
        {
            _stockTicker = stockTicker;
        }

        public IEnumerable<Stock> GetAllStocks()
        {
            return _stockTicker.GetAllStocks();
        }
    }
}
4

3 回答 3

8

它调用同一类的另一个构造函数。

public class Foo
{
    public Foo() : this (1) { }

    public Foo(int num) 
    {

    }
}

调用new Foo()将调用Foo(1).

更多信息: http: //www.dotnetperls.com/this-constructor

于 2013-08-11T12:40:10.070 回答
2

this(StockTicker.Instance)触发另一个类构造函数:

使用构造函数(C# 编程指南)

this构造函数可以使用关键字调用同一对象中的另一个构造函数。就像base, this 可以带或不带参数使用,构造函数中的任何参数都可以作为 this 的参数,或者作为表达式的一部分。

于 2013-08-11T12:40:13.910 回答
0

它调用另一个构造函数

于 2013-08-11T12:41:09.157 回答