我知道x64架构的一些显而易见的好处(更高的可寻址RAM地址等)......但是:
我来自ac #background,其中所有内容都有自己的命名空间,但这种做法在c ++世界中似乎并不常见.我应该将代码包装在自己的命名空间,未命名的命名空间或没有命名空间吗?
我从未成为MFC的忠实粉丝,但这不是重点.我读到微软将于2010年发布一个新版本的MFC,这真让我感到奇怪 - 我认为MFC已经死了(没有恶意,我真的这么做了).
MFC用于新开发吗?如果是这样,那么好处是什么?我无法想象它对诸如C#之类的东西有任何好处(或者甚至只是使用Win32 API的c ++).
多年来,我使用WinSock(路由器,Web /邮件/ FTP服务器等等)为Windows开发了一小部分C++服务器/客户端应用程序.
我开始越来越多地考虑创建这些应用程序的IPv6版本(当然,同时保持原始的IPv4版本).
问题:
为了参考(或为了好玩),您可以在我的应用程序的核心部分浏览IPv4代码的高峰.
在开发具有大量存储过程的应用程序时,是否应将它们存储在某种源版本控制系统中(例如源安全,TFS,SVN)?如果是这样,为什么?使用SQL Server Management Studio是否有方便的前端方式?
我理解这可能被解释为"你的偏好是什么"问题之一,但我真的想知道为什么你会选择以下方法之一而不是另一种方法.
假设你有一个超级复杂的类,例如:
class CDoSomthing {
public:
CDoSomthing::CDoSomthing(char *sUserName, char *sPassword)
{
//Do somthing...
}
CDoSomthing::~CDoSomthing()
{
//Do somthing...
}
};
Run Code Online (Sandbox Code Playgroud)
我应该如何在全局函数中声明本地实例?
int main(void)
{
CDoSomthing *pDoSomthing = new CDoSomthing("UserName", "Password");
//Do somthing...
delete pDoSomthing;
}
Run Code Online (Sandbox Code Playgroud)
- 要么 -
int main(void)
{
CDoSomthing DoSomthing("UserName", "Password");
//Do somthing...
return 0;
}
Run Code Online (Sandbox Code Playgroud) 我想以编程方式检索任何类的接口ID,以便将其传递给CoCreateInstance.很感谢任何形式的帮助!!
请参阅下面的"我如何获得此":
HRESULT hResult;
CLSID ClassID;
void *pInterface;
if(!(hResult = SUCCEEDED(CoInitialize(NULL))))
{
return 1;
}
if(S_OK == CLSIDFromProgID(OLESTR("Scripting.FileSystemObject"), &ClassID))
{
hResult = CoCreateInstance(ClassID, NULL, CLSCTX_INPROC_SERVER,
<<How Do I Get This?>>, (LPVOID *)&pInterface);
}
CoUninitialize();
Run Code Online (Sandbox Code Playgroud)
编辑:感谢所有的帮助,现在似乎完美的工作!:
HRESULT hResult;
CLSID ClassID;
IClassFactory *pClf;
void *pVdb;
if(!(hResult = SUCCEEDED(CoInitialize(NULL))))
{
return 1;
}
if(SUCCEEDED(CLSIDFromProgID(OLESTR("Scripting.FileSystemObject"), &ClassID))
{
IDispatch *pDispatch;
if(SUCCEEDED(CoCreateInstance(ClassID, NULL, CLSCTX_INPROC_SERVER,
IID_IDispatch, (void **)&pDispatch))
{
OLECHAR *sMember = L"FileExists";
DISPID idFileExists;
if(SUCCEEDED(pDispatch->GetIDsOfNames(
IID_NULL, &sMember, 1, LOCALE_SYSTEM_DEFAULT, &idFileExists))
{
unsigned int puArgErr = 0; …Run Code Online (Sandbox Code Playgroud) 我非常精通SQL服务器性能,但我不得不争辩说GUID应该被用作Clusterd主键的默认类型.
假设该表每天的插入量相当少(5000 +/-行/天),我们会遇到什么样的性能问题?页面拆分将如何影响我们的搜索性能?我应该多久重新索引一次(或者我应该整理碎片)?我应该将填充因子设置为(100,90,80等)?
如果我每天插入1,000,000行怎么办?
我为所有问题道歉,但我希望得到一些备份,因为不使用GUID作为PK的默认值.然而,我完全愿意通过StackOverflow用户群的过度知识改变我的想法.
静态变量在C#中具有与在C++中相同或相似的功能吗?
编辑:
使用C++,您可以在许多不同的上下文中使用静态变量 - 例如:1)全局变量,2)本地函数变量,3)类成员 - C#中的类似用法是否与C++类似?
多年来,我一直在使用驱动器序列号将虚拟化来宾磁盘映射到管理程序磁盘。例如,VMWare ESXi 会将磁盘序列号设置为磁盘的 UUID - 允许轻松映射。
现在我已经运行了一些 Windows Server 2019 服务器,我注意到它们都没有通过以下 WMI 类返回磁盘序列号:Win32_DiskDrive, Win32_PhysicalMedia.
我已经浏览了我正在使用的 Windows 和 WMI 类的文档,但找不到任何关于它被弃用/删除的参考。
如何使用 .NET 在 Windows 2019 中获取磁盘(而不是卷)序列号?