C#规范第10.1.1.1节规定:
允许(但不是必需)抽象类来包含抽象成员.
这允许我创建这样的类:
public abstract class A
{
public void Main()
{
// it's full of logic!
}
}
Run Code Online (Sandbox Code Playgroud)
甚至更好:
public abstract class A
{
public virtual void Main() { }
}
public abstract class B : A
{
public override sealed void Main()
{
// it's full of logic!
}
}
Run Code Online (Sandbox Code Playgroud)
这真是一个具体的课程; 它只是抽象的,因为一个人无法实例化它.例如,如果我想执行逻辑,B.Main()我必须首先获得B的实例,这是不可能的.
如果继承者实际上不必提供实现,那么为什么称它为抽象?
换句话说,为什么C#允许只有具体成员的抽象类?
我应该提一下,我已经熟悉了抽象类型和成员的预期功能.
我想为Visual C++项目创建单元测试.我尝试按照这些MSDN说明操作.我找到了他们区分非托管/混合/纯代码的页面,但我并不完全理解这些概念.我的代码不使用.NET,可能会在MinGW下编译并进行一些代码调整.
我的主项目构建了一个可执行文件,因此我按照从测试项目中引用导出函数的步骤进行操作.对于初学者我有不同的项目选择:

我参加了原生单元测试项目.我添加了对我的主项目的引用,并将Include Directories设置为$(SolutionDir)\Cubes;$(IncludePath).我编写了我的代码并在编译时得到了这个:
1>Creating library C:\Users\Pieter\Dropbox\Unief\TTUI\TTUIproject\Cubes\Debug\CubesTest.lib and object C:\Users\Pieter\Dropbox\Unief\TTUI\TTUIproject\Cubes\Debug\CubesTest.exp
1>LayoutTest.obj : error LNK2019: unresolved external symbol "public: __thiscall Room::Room(void)" (??0Room@@QAE@XZ) referenced in function "public: void __thiscall CubesTest::LayoutTest::NumOfRoomsConsistency(void)" (?NumOfRoomsConsistency@LayoutTest@CubesTest@@QAEXXZ)
1>LayoutTest.obj : error LNK2019: unresolved external symbol "public: __thiscall Layout::Layout(class Room *,int)" (??0Layout@@QAE@PAVRoom@@H@Z) referenced in function "public: void __thiscall CubesTest::LayoutTest::NumOfRoomsConsistency(void)" (?NumOfRoomsConsistency@LayoutTest@CubesTest@@QAEXXZ)
1>LayoutTest.obj : error LNK2019: unresolved external symbol "public: void __thiscall Layout::add(int,int,class Room *)" (?add@Layout@@QAEXHHPAVRoom@@@Z) referenced in function "public: void …Run Code Online (Sandbox Code Playgroud) 我的ASP.NET v3.5 Web应用程序在尝试打开与SQL Server 2008数据库的连接时抛出以下异常:
System.Data.SqlClient.SqlException:无法打开登录请求的数据库"MyDbName".登录失败.用户'NT AUTHORITY\IUSR'登录失败.
问题是,我已经添加NT AUTHORITY\IUSR到服务器的登录列表和数据库的用户列表中.对于服务器,我已授予用户Public角色,并且我已授予数据库db_datareader权限.
我也授予了相同的权限NT AUTHORITY\NETWORK SERVICE,这是运行应用程序池的标识.
如果有所不同,Web应用程序由IIS7托管.DB和IIS同时位于同一物理计算机上时出现问题.
是否存在将SQL子查询转换为连接的通用过程或算法,反之亦然?也就是说,是否有一组排版操作可以应用于语法正确的SQL查询语句,其中包含一个子查询,该子查询导致函数等效语句没有子查询?如果是这样,它们是什么(即算法是什么),在什么情况下它们不适用?
是否可以让Visual Studio的"类视图"窗格(在"视图">"类视图"下可用)自动同步到当前符号?每当当前符号发生变化时,基本上都会执行View.SynchronizeClassView.
我正在学习LINQ并且有一个非常简单的问题,我认为这将有助于我更好地理解技术.如何找到一组int的产品?
例如,LINQ的方法是什么:
int[] vals = { 1, 3, 5 };
return vals[0] * vals[1] * vals[2];
Run Code Online (Sandbox Code Playgroud) 我已经读过在同一台机器上安装SQL Server和IIS是不明智的,但我没有看到任何证据.有没有人试过这个,如果有的话,结果是什么?在什么时候需要将它们分开?有必要进行调整吗?我特别关注IIS7和SQL Server 2008.
如果有人可以提供显示何时更有意义去两台机器的数字,那将是最有帮助的.
我正在进行Python 3,但似乎无法找到它的IPython版本.主要的IPython 发布页面没有列出任何合适的内容.任何帮助让IPython为Py3k工作的人都会非常感激.
在SQL Server上,sys.objects表包含"Type"和"Type_Desc"属性.例如,对于我的一个DB:
SELECT DISTINCT [Type], Type_Desc
FROM Sys.Objects
ORDER BY [Type]
Run Code Online (Sandbox Code Playgroud)
返回:
C CHECK_CONSTRAINT D DEFAULT_CONSTRAINT F FOREIGN_KEY_CONSTRAINT FN SQL_SCALAR_FUNCTION FS CLR_SCALAR_FUNCTION IT INTERNAL_TABLE P SQL_STORED_PROCEDURE PK PRIMARY_KEY_CONSTRAINT S SYSTEM_TABLE SQ SERVICE_QUEUE TR SQL_TRIGGER U USER_TABLE UQ UNIQUE_CONSTRAINT V VIEW
根据使用的类型,不同的DB具有不同的结果.
某处有这些类型的综合清单吗?sys.objects没有约束指向我的表,sys.types包含数据类型.我搜索过SQL BOL但没有找到它.任何帮助,将不胜感激.
编辑:某些DB仅使用这些类型的子集.例如,如果我有一个没有视图的数据库,当我像上面一样查询Sys.Objects时,结果中没有"V"行.我正在寻找SQL Server使用的所有可能类型和描述的列表.
我正在使用Python v3.1中的分数模块来计算最大的公约数.我想知道使用什么算法.我猜测欧几里德方法,但我想确定.文档(http://docs.python.org/py3k/library/fractions.html?highlight=fractions.gcd#fractions.gcd)没有帮助.有人能告诉我吗?
sql-server ×3
c# ×2
abstract ×1
algorithm ×1
asp.net ×1
classview ×1
fractions ×1
ide ×1
iis ×1
iis-7 ×1
ipython ×1
join ×1
linq ×1
performance ×1
python ×1
python-3.x ×1
sql ×1
subquery ×1
types ×1
unit-testing ×1
visual-c++ ×1